【发布时间】:2018-01-22 14:12:34
【问题描述】:
我最近对 Talend http://coders.talend.com/ 提出的迁移计划很着迷 (我猜)通过谈话记录here presentation 来自 Andrei Shakirin 的演讲。 我也看过他的同事 Christian Schneider 发表的很多出版物。
当然,主题的一部分是 Christian 的 blueprint-maven-plugin。 上面链接的演示文稿说明了如何将相同的代码库连续部署到像 Tomcat 这样的常见 Java EE 容器和像 Karaf 这样的 OSGi 容器,这正是我感兴趣的(不是 Tomcat,而是 Wildfly 或 Glassfish) 所以,我想知道:
- blueprint-maven-plugin 如何处理
@Stateful、@Stateless注释 和@ApplicationScoped、@SessionScoped、@RequestScoped等在豆子上 在制作蓝图文件时 - 另外,假设我要编写一个使用 CDI 的新代码,我希望它也可以部署到 Karaf。那我该怎么写 那一块?我应该避免使用@Stateful、@Stateless 注释吗?
- 那些注释(如果它们出于任何原因与我部署到 OSGi 的情况无关)将如何由该 OSGi 解释 容器(Karaf),因为这些注释确实存在于代码中?
【问题讨论】:
-
我发现这也很有用stackoverflow.com/a/3568041/8305572,因为问题的上下文是关于减少与特定容器/环境的耦合.. 即使我们对 OSGi 与非 OSGi 部署有所怀疑。我相信@ST.Kee 的答案当然会成为答案,因为它们已经不多了。
标签: osgi cdi karaf blueprint-osgi blueprint