我最近对Talend http://coders.talend.com/提出的移民计划着了迷。 (我猜)通过谈话记录here 和 Andrei Shakirin 的演讲presentation。 我看过他的同事 Christian Schneider 制作的很多出版物。
当然,主题的一部分是Christian的blueprint-maven-plugin。 上面链接的演示文稿说明如何可以将相同的代码库连续部署到常见的Java EE容器(如Tomcat)和OSGi容器(如Karaf),这正是我感兴趣的(例如,不是Tomcat,而是Wildfly或Glassfish) 所以,我想知道:
int _a = 1;
int a = 2;
int a_ = 3;
if (_a == 1 && a == 2 && a_ == 3) {
System.out.println("Success");
}
,@Stateful
注释
和bean上的@Stateless
,@ApplicationScoped
,@SessionScoped
等
在制作蓝图文件时答案 0 :(得分:0)
@Stateless和@Stateful实际上不是CDI的一部分,而是它的扩展(EJB)。如果您真的喜欢EJB所做的事情,请考虑在karaf中使用OpenEJB功能。只要这是一个有效的bean,你应该可以在没有这些注释的情况下进行@Inject。
注释只是源代码的标记(换句话说,它们不做任何事情),除非有一个处理器注册处理它们,否则它不会做任何事情。
E.g。您可以使用new关键字实例化EJB并对其执行单元测试(当然,使用setter完成所有注入)
声明: 我自己并没有真正使用这个插件,并且可能有更新版本的插件支持这些ejb注释。