如何在jboss 7.1.1中设置特定的ejb jndi名称

如何在jboss 7.1.1中设置特定的ejb jndi名称,jboss,ejb,jndi,Jboss,Ejb,Jndi,我的web应用程序包含一些2.x有状态和无状态会话EJB。但与以前的jboss版本(以及其他主要应用服务器)不同,我无法在JBoss7.1.1中指定ejb jndi名称。我遵循了他们的文档,删除了jboss.xml,取而代之的是jboss-ejb3.xml,并以完全配置文件模式启动了应用服务器 <jboss:ejb-jar xmlns:jboss="http://www.jboss.com/xml/ns/javaee" xmlns="http://jav

我的web应用程序包含一些2.x有状态和无状态会话EJB。但与以前的jboss版本(以及其他主要应用服务器)不同,我无法在JBoss7.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>

MyEJB
MyEJB_JNDI_名称
但是,jboss-ejb3.xml中的jndi名称不起作用,使我无法设置自己的自定义ejbjndi名称。有人知道怎么做吗?

在JBossAS7中不再受支持。发件人:

在AS7中,我们不再支持绑定到EJB的自定义JNDI名称。所以 bean总是绑定到规范规定的java:global、java:app 和java:模块名称空间。会话bean的
元素不再受支持


实现这种方法是为了符合J2EE6规范吗?另外,由于jboss-ejb3.xml模式仍然支持node,所以只要它符合您指定的三个前缀,就可以指定jndi名称。您在哪里看到它?如果你看一看
是无处可寻的,但是他们确实提到了一个
,并对会话bean进行了说明:“…可用于提供特定于供应商的部署信息,如会话bean的远程主/业务接口的物理jndi名称。并非所有实现都需要支持此元素。此元素的任何使用都是不可移植的”。它既不在jboss中,也不在jboss-ejb3.xml中。因此,我选择在jboss'standalone.xml中使用以下方法:是的,这也有效。正如您所知,最新的规范选择了自定义JNDI名称,并定义了标准化的全局JNDI命名空间(第4.4节)这就是我在发布对您实际答案的第一个回复时所想的。现在,我需要确保所有其他主要应用程序服务器都遵循相同的原则。至于“”,您是否知道我在哪里可以找到关于如何在部署描述符中使用它的最佳描述。到目前为止,我还无法找到任何描述激动人心的。