【问题标题】:how to set specific ejb jndi names in jboss 7.1.1如何在 jboss 7.1.1 中设置特定的 ejb jndi 名称
【发布时间】:2012-09-19 20:27:10
【问题描述】:

我的 Web 应用程序包含一些 2.x 有状态和无状态会话 ejb。但与以前的 jboss 版本(以及其他主要应用程序服务器)不同,我无法在 jboss 7.1.1 中指定 ejb jndi 名称。我已经按照他们的文档删除了 jboss.xml 以支持 jboss-ejb3.xml,以及以完整配置文件模式启动应用程序服务器。

<jboss:ejb-jar xmlns:jboss="http://www.jboss.com/xml/ns/javaee"
                  xmlns="http://java.sun.com/xml/ns/javaee"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-ejb3-2_0.xsd
                     http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
                  version="3.1"
                  impl-version="2.0">
   <enterprise-beans> 
      <session>
         <ejb-name>MyEJB</ejb-name>
         <jndi-name>MyEJB_JNDI_NAME</jndi-name>
      </session>
   </enterprise-beans>
</jboss:ejb-jar>

然而,jboss-ejb3.xml 中的 jndi-name 并没有占据,阻止我设置自己的自定义 ejb jndi 名称。有谁知道如何做到这一点?

【问题讨论】:

    标签: jboss ejb jndi


    【解决方案1】:

    JBoss AS 7 不再支持&lt;jndi-name&gt;。来自this JIRA

    在 AS7 中,我们不再支持绑定到 EJB 的自定义 JNDI 名称。所以 bean 总是绑定到规范要求的 java:global, java:app 和 java:module 命名空间。会话 bean 的 &lt;jndi-name&gt; 元素不再受支持。

    【讨论】:

    • 是否实施了这种方法以符合 j2ee 6 规范?另外,因为 jboss-ejb3.xml 模式仍然支持 节点,所以只要它符合您指定的三个前缀,它就可以指定一个 jndi 名称?
    • 你在哪里看到的?如果您查看 ejb-jar_3_1.xsd &lt;jndi-name&gt; 无处可去,但他们确实提到了 &lt;mapped-name&gt; 并说明了会话 bean:“...可用于提供特定于供应商的部署信息,例如会话 bean 的远程主/业务接口的物理 jndi 名称。此元素不需要所有实现都支持。此元素的任何使用都是不可移植的”。它不在jboss-ejb3-2_0.xsd
    • 你是对的,jboss-ejb3.xml中没有。所以我选择在 jboss 的standalone.xml 中使用以下方法:
    • 是的,这也有效。只是为了让您知道最新的规范已选择退出自定义 JNDI 名称并定义了一个标准化的全局 JNDI 命名空间EJB 3.1 Spec 的第 4.4 节)
    • 当我发布我对您的实际答案的第一个回复时,我就是这么想的。现在我需要确保的是所有其他主要的应用程序服务器都遵循相同的。至于“”,您是否知道我在哪里可以找到关于如何在部署描述符中使用它的最佳描述。到目前为止,我还没有找到任何描述性的东西。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-18
    • 1970-01-01
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多