如何通过RMI从另一个应用程序调用已部署应用程序的数据对象的方法?

Posted

技术标签:

【中文标题】如何通过RMI从另一个应用程序调用已部署应用程序的数据对象的方法?【英文标题】:How to call method with data object of deployed application from another application through RMI? 【发布时间】:2012-09-11 05:39:01 【问题描述】:

我在 apache tomcat 上部署了两个 java 应用程序,在我的第一个应用程序的一个阶段需要与其他应用程序通信,即我想调用具有其他应用程序数据对象的 servlet 或方法。 可以使用 RMI 吗? 我想将一些数据发送到处理它的远程方法,并将一些结果返回给调用应用程序。 那么我怎样才能与其他应用程序通信......? 提前致谢。

【问题讨论】:

【参考方案1】:

我不确定为什么要使用 RMI 在 Servlet 之间进行通信。有更好/更干净的方法来做到这一点,比如通过它的 URL 调用 Servlet。您可以使用 URLConnection/HttpClient 来实现相同的目的。

【讨论】:

我想将一些数据对象从第一个应用程序发送到其他应用程序的 servlet...这可以通过 HTTP.. 吗?? 你的servlet(你想调用的那个)如何接受数据对象? Servlet 或任何有用的类...我对 RMI 没有任何想法...我只想发送数据并在那里执行特定操作..【参考方案2】:

Servlet 只能进行或理解 HTTP 调用。如果你愿意直接调用一些方法,你可以使用 RMI。创建一个对象,在某个端口向 rmi 注册表注册它,在另一端获取序列化对象并将类型转换为同一类并使用它。常规 RMI 类型

【讨论】:

以上是关于如何通过RMI从另一个应用程序调用已部署应用程序的数据对象的方法?的主要内容,如果未能解决你的问题,请参考以下文章

4_分布式通信框架RMI

RMI 服务器如何响应多个 RMI 客户端调用?

java基础十一[远程部署的RMI](阅读Head First Java记录)

IdentityServer4 - 如何从另一个 ApiResource 调用一个 ApiResource

Java中RMI远程调用demo

如何从另一个线程的 cpp 代码同步调用 qml 信号处理程序?