1

我是 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>

4

2 回答 2

1

docs您可以在JBoss 发行版目录中 找到文档docs/schema/jboss_5_0.xsd

这些元素被定义为local-jndi-nameType类型,这里是它的描述:

应绑定本地接口下的 JNDI 名称。如果没有提供,jboss 将假定 "jndi-name" = "beanClass/local"

于 2011-08-21T11:34:22.017 回答
1

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

命名不一致的原因是 EJB 1.x 只有远程接口,所以 only<jndi-name>是必需的。

于 2011-08-21T11:46:00.837 回答