use*_*154 2 ejb jndi java-ee openejb
作为openejb文件decalres
坚不可摧的规则.当事情不起作用时,一遍又一遍地阅读这些.
我在嵌入模式下使用openejb,DI工作正常,但我想在pojo中查找使用标准jndi查找作为ctx.lookup("java:comp/env/DS")获取对我的数据源的引用我试图通过无状态ejb中的xml和@Resource声明资源,以测试是否填充了env子上下文但我不知道为什么从未创建env子上下文... plz help
我在测试中使用OpenEJB时遇到了类似的问题.在使用OpenEJB进行嵌入式测试的情况下,您应该寻找java:openejb /而不是java:comp/env
通过这个小片段,您可以列出OpenEJB注册的内容
NamingEnumeration<Binding> list = initialContext.listBindings("java:openejb/");
while (list.hasMore()) {
Binding item = list.next();
System.out.println(item.getClassName() +" :: " + "java:openejb/" + item.getName());
}
Run Code Online (Sandbox Code Playgroud)
如果你想在你的数据源列表中找到在"java:openejb/PersistenceUnit /"下注册的所有内容.最有可能你会发现"java:openejb/PersistenceUnit/[name-of-persistence-unit] [hashcode]" - 以后你可以在测试中使用它.
希望有所帮助--Jakub
归档时间: |
|
查看次数: |
1934 次 |
最近记录: |