我正在尝试学习Java EE并且我已经阅读了一段时间关于JNDI,但除了互联网上的一些基本示例,并且相同的定义从一个地方复制到另一个地方,我发现很少的信息真正解释了建筑。我需要知道我的理解是否正确,然后我有一些问题:
我的理解:
JNDI
JNDI ENC
我的问题:
如果我有多个应用服务器,并且我使用应用服务器JNDI实现(来自JBossNS),我是否要配置所有其他服务器以使用该特定服务器的JNDI实现?我基本上对企业架构以及如何在服务器之间找到EJB感兴趣。
如何配置ENC以注入在另一个应用程序服务器(不同的虚拟机)中找到的远程对象。我是否使用“ejb-link”并使用全局命名空间来访问远程bean?
与答案相关,示例会很好,最终链接JNDI架构以及查找的方式将会有所帮助。
谢谢
答案 0 :(得分:3)
我会尝试回答我自己的问题,也许对某人有用。
首先,与JNDI有关,我的理解是正确的。我找到了一个非常好的链接(我不确定Java EE版本),但是这个详细解释了JNDI如何工作:
第二个问题与ENC有关。我部分正确,但是ENC是JNDI世界中的上下文(在JNDI的上下文定义中定义)。此上下文主要用作别名,无论容器是什么,都能够引用容器/模块/应用程序EJB。因此,无论何时从ENC引用某些内容,您都将被重定向到适当的资源,该资源可以驻留在另一个模块/应用程序/应用程序服务器中。另一个对我有用的链接是下面的链接。它包含几个链接,所以你可以确保全部阅读:
http://www.javacodegeeks.com/2011/08/ejb-programmatic-lookup.html
此致