我正在JBoss 7.1.1上部署Java EE应用程序,当我的会话bean部署完毕后,JBoss会打印出一条消息,说明它创建了多个JNDI绑定。像这样:
java:global/ear-name/jar-name/MyClassImpl!fully.qualified.path.to.Interface
java:app/jar-name/MyClassImpl!fully.qualified.path.to.Interface
java:module/MyClassImpl!fully.qualified.path.to.Interface
java:jboss/exported/ear-name/jar-name/MyClassImpl!fully.qualified.path.to.Interface
java:global/ear-name/jar-name/MyClassImpl
java:app/jar-name/MyClassImpl
java:module/MyClassImpl
它从EJB到EJB略有不同,但这是一般的想法。
我对这里发生的事感到困惑。为什么会有这么多?这些JNDI绑定之间有区别吗?如果有的话,何时应该使用它们?
答案 0 :(得分:7)
你可以在这里找到所有的文档[1],但简而言之,其中一些是由规范决定的,一些是JBoss特有的功能(主要是java:jboss / exported,java:jboss条目)
[1] https://docs.jboss.org/author/display/AS71/JNDI+Reference