在EJB中声明resource-ref

时间:2012-04-27 16:11:21

标签: ejb jndi websphere-6.1 ejb-jar.xml

这是他们在ejb-jar.xml中声明资源引用的方式:

<enterprise-beans>
<session>
<ejb-name>ResourceBean</ejb-name>
<resource-ref>
<res-ref-name>jdbc/employee</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
</resource-ref>
</session>
</enterprise-beans>

在此链接:http://javahowto.blogspot.ca/2006/06/5-ways-to-get-resources-in-ejb-3.html 现在如果我有另一个需要使用相同resource-ref的会话bean,我是否必须在第二个EJB中再次声明它?或者有解决方法吗?

1 个答案:

答案 0 :(得分:3)

在EE 6之前(在WebSphere Application Server 8.0中可用),无法跨EJB共享resource-ref。您必须重新声明每个EJB中的resource-ref

在EE 6中,您可以使用诸如java:module/env/jdbc/employee之类的名称声明resource-ref,并且它将对模块中的所有EJB可见(并且java:app对所有模块都可见,并且所有应用都可以看到java:global