我决定在我的Junit测试中使用TomEE OpenEJB,因为IBM的EmbeddedEJBContainer太有限了。例如,它不支持MDB。
因此,我在Maven POM.xml中添加了许多依赖项,并将所有必需的OpenEJB jar放入我的测试代码中。在BeforeClass方法中,我创建了EmbeddedContainer:
"bower-install": "bower install --allow-root"
这很成功。所以,我认为@EJB注射注释也可以。但事实并非如此。然后我继续询问OpenEJB使用的JNDI上下文。我发现我的EJB引用受到以下子上下文的限制:
“java:global / MyModule / MyEJB!com.company.dept.MyEJB”和“java:global / MyModule / MyEJB”
所以,他们在那里。但是,@ EJB注释注入失败。因此,我继续搜索EJB注释方法的tomcat注释实现。我无法找到。
想知道这里可能有什么问题。我能想到的一些事情:
我想将MyEJB引用本身绑定到JNDI上下文,以使注入工作但不能匹配实际的子上下文名称。你能指点我正确的方向吗?
此致
Student_101