我想在openEJB
测试中使用Junit
。我可以使用ejb-jar.xml
运行它。但在这种情况下,我无法在EJB
中运行我的jboss
应用程序,因为我没有使用ejb-jar.xml
进行设置。相反,我使用annotations
。
因此,如果我使用ejb-jar.xml
我无法运行我的应用程序。
下面是我的ejb-jar.xml文件内容。它实际上是一个空标记。
<ejb-jar/>
如果我删除ejb-jar.xml
Junit测试失败并且说找不到jndi名称。
这是什么解决方案?
答案 0 :(得分:0)
好的,我发现了这个问题。 首先,我将ejb-jar.xml移动到main的测试包中。 src&gt;测试&gt;资源&gt; META-INF&gt; ejb-jar.xml
这对我没有帮助。
然后我将此属性行添加到我的测试类中。
Properties properties = new Properties();
properties.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.client.LocalInitialContextFactory");
// Below property actually was missing and caused this problem. I add it then it works fine.
properties.setProperty("openejb.deployments.classpath.include", ".*");
initialContext = new InitialContext(properties);
现在我可以在Jboss中部署我的EJB,也可以在Junit上测试ejb。