【问题标题】:RMI returning EJB remote objectsRMI 返回 EJB 远程对象
【发布时间】:2014-05-31 09:32:05
【问题描述】:

我的要求是

我有两台机器,客户端和服务器。在服务器上只有一个端口是开放的(不应该是 JNDI 端口)。客户端需要引用部署在服务器中的 EJB 远程对象,以便调用这些 EJB 对象上的方法。

在这里,我计划在服务器上的开放端口上进行客户端和服务器之间的 RMI 通信。获取调用服务器后,将 EJB3 对象返回给客户端。

这是我的问题

  1. RMI 是否允许将远程 EJB3 引用返回给客户端?
  2. 如果是,一旦 EJB 引用转发给客户端,如果客户端调用远程 EJB 中的方法,该通信使用哪个端口进行?因为服务器上只打开一个端口?
  3. 这里可以使用 RMI 还是 EJB 可以用作通信?我在网上搜索过,但无法将 EJB 绑定到端口。
  4. 可以在 Glassfish 中部署 RMI 应用程序吗?

谢谢 德克

【问题讨论】:

    标签: ssl ejb ejb-3.0 rmi glassfish-2.x


    【解决方案1】:

    RMI 是否允许将远程 EJB3 引用返回给客户端?

    是的。

    如果是,一旦 EJB 引用转发给客户端,如果客户端调用远程 EJB 中的方法,使用哪个端口进行通信?

    EJB 在哪个 Piet 上导出。

    因为服务器只开放一个端口?

    嗯?

    这里可以用 RMI 还是 EJB 可以用作通信?

    它们是一样的。这个问题毫无意义。

    我在网上搜索过,但无法将 EJB 绑定到端口。

    这取决于很多事情,例如您是否使用 RMI/IIOP 以及是否可能在特定容器中。

    可以在 Glassfish 中部署 RMI 应用程序吗?

    是的。

    【讨论】:

    • 我在服务器上只打开了一个端口。如果我使用 RMI 返回 ejb3 引用,RMI 注册表需要一个端口。那么是否可以在同一个端口上导出 EJB 呢?还是需要不同的端口?
    • 如果注册表是通过 LocateRegistry.createRegustry 在同一个 JVM 中创建的,这是可能的。但是从你的另一个问题来看,你实际上是在使用 RMI/IIOP,它根本没有注册表,它有 COSNaming。
    猜你喜欢
    • 2023-03-03
    • 2015-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多