【问题标题】:resource-ref at application scope in EJB 2.1 ProjectEJB 2.1 项目中应用程序范围的资源引用
【发布时间】:2011-02-21 23:39:29
【问题描述】:

是否可以定义适用于应用程序中所有 EJB 的资源引用?

目前我有一个看起来像这样的 ejb-jar.xml:

<ejb-jar>
  <enterprise-beans>
    <session id="foo">
      <!-- snip -->
      <resource-ref>
        <res-ref-name>jdbc/myDatasource</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>
    </session>
    <session id="bar">
      <!-- snip -->
      <resource-ref>
        <res-ref-name>jdbc/myDatasource</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>
    </session>
  </enterprise-beans>
</ejb-jar>

您会注意到两个 EJB 都为它们定义了相同的资源引用。有没有办法在 J2EE 1.4 应用程序中排除这种重复?

理想情况下,我应该能够在应用程序中定义 jdbc/myDatasource 资源,并让在该容器中运行的任何东西都能够通过对“java:comp/env/jdbc/myDatasource”进行 JNDI 查找来访问它。有没有办法做到这一点?

【问题讨论】:

    标签: java jakarta-ee jndi ejb-jar.xml resource-ref


    【解决方案1】:

    不,在 J2EE 1.4 中不可能像这样考虑资源引用。 JavaEE 6 提供&lt;resource-ref-name&gt;java:module/jdbc/myDatasource&lt;/resource-ref-name&gt;(以及java:appjava:global)以在更高级别共享资源引用。

    【讨论】:

    • 这就是我所怀疑的。感谢您的确认。
    猜你喜欢
    • 2011-01-13
    • 1970-01-01
    • 2013-03-01
    • 2010-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多