Jboss.xml中<jndi-name>和<local-jndi-name>之间的区别?</local-jndi-name> </jndi-name>

时间:2011-08-21 01:41:51

标签: jndi jboss5.x ejb-2.x

我是EJB的新手并试图在Jboss 5中运行一些EJB(2.0)示例。执行没问题,但我在jboss.xml中找到了这些行:

<jboss>
    <enterprise-beans>
        <session>
            <ejb-name>MyStatelessBean</ejb-name>
            <jndi-name>JNDIName</jndi-name>
            <local-jndi-name>LocalJNDIName</local-jndi-name>
        </session>
    </enterprise-beans>
</jboss>

我试图谷歌但无法找到<jndi-name><local-jndi-name>之间截然不同的解释,而在代码中,作者只使用<jndi-name>中定义的名称?

2 个答案:

答案 0 :(得分:1)

您可以在JBoss发行版docs的{​​{1}}目录中找到文档。

这些元素是docs/schema/jboss_5_0.xsd类型的定义,下面是对它的描述:

  

应绑定具有本地接口的JNDI名称。如果不是   如果jboss将假设“jndi-name”=“beanClass / local”

答案 1 :(得分:1)

EJB 2.x bean同时具有远程和本地接口。 <jndi-name>元素用于绑定Remote接口,而<local-jndi-name>用于绑定本地接口。

命名不一致的原因是EJB 1.x只有远程接口,因此只需要<jndi-name>