Glassfish - 在节点之间共享EJB Web应用程序

时间:2014-12-09 14:33:50

标签: java glassfish ejb glassfish-3

我有一个glassfish服务器,在几个不同的节点上部署了几个EJB战争。我希望其中一个应用程序(部署在node1上)对部署在不同节点上的所有应用程序“可见”,以便它们能够从中注入一些远程bean。但是,我只允许为wole服务器提供此应用程序的一个实例,因此无法在所有节点上单独部署它。  这种设置在glassfish 3.1中是否可行?

1 个答案:

答案 0 :(得分:1)

这可以通过部署描述符实现:

https://glassfish.java.net/javaee5/ejb/EJB_FAQ.html#cross-appserverremoteref

在你的sun-web.xml(或者glassfish-web.xml,两者都适用于这种情况)定义ejb-ref如下:

<ejb-ref>
    <ejb-ref-name>fooejbref</ejb-ref-name>
    <jndi-name>corbaname:iiop:node_name:node_IIOP_port#foo.bar.YourEJBRemote</jndi-name>
</ejb-ref>

这不太方便 - 您需要为每个需要的远程bean定义它,并在每个需要它的应用程序中添加这样的描述符。它应该有效,我不知道有什么更好的方法。