【问题标题】:Glassfish - share EJB web application between nodesGlassfish - 在节点之间共享 EJB Web 应用程序
【发布时间】:2014-12-19 16:14:20
【问题描述】:

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

【问题讨论】:

    标签: java glassfish ejb glassfish-3


    【解决方案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 定义它,并在每个需要它的应用程序中添加这样的描述符。但是它应该可以工作,我不知道有什么更好的方法。

    【讨论】:

    • 是的,它有效,但这个解决方案非常“脏”,即。我必须记住为我的每个远程 bean 添加部署描述符。有没有办法以更通用的方式做到这一点?
    猜你喜欢
    • 2012-11-17
    • 2016-10-11
    • 1970-01-01
    • 1970-01-01
    • 2012-12-26
    • 2020-06-06
    • 2010-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多