【问题标题】:Communication between Java programs with non-JDK objectsJava 程序与非 JDK 对象之间的通信
【发布时间】:2012-01-29 22:41:29
【问题描述】:

我正在寻找在同一台机器上运行的两个 java 程序之间的通信通道。我找到了一些选项(RMI 和 XML-RCP),但我发现的所有示例都没有显示对象的交换,它是非原始的并且在 JDK(我们自己的对象)上不知道。

那么,当我想这样做时,有什么简单的技术可以使用(注意 Utils.jar 它位于 Server.jar 和 Client.jar 的类路径中):

Utils.jar:

class MyClassRequestParams { ... }

class MyClassReturnParams { ... }

Client.jar:

// Server creation
...

// Send request
MyClassRequestParams params = new MyClass...

MyClassReturnParams response = server.send("serverMethodName", params);

Server.jar:

MyClassRequestParams serverMethodName(MyClassRequestParams params)
{
   MyClassReturnParams response = new MyC...

   // do processing

   return response;

}

【问题讨论】:

    标签: java rmi xml-rpc rpc xmlrpcclient


    【解决方案1】:

    你也可以考虑Versile Java(我是它的开发者之一)。按照链接获取远程调用和定义远程接口的示例。它为远程 ORB 交互实现了一个独立于平台的标准,目前也可用于 python。

    【讨论】:

      【解决方案2】:

      只需让您的传输类实现 Serializable 接口,使用 RMI 一切都会好起来的。请注意,传输对象引用的每个对象也应该是可序列化的。

      RMI tutorial 使用了一个自定义任务接口的示例,该接口由非“标准”JDK 类的 Pi 自定义类实现。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-21
        • 2017-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-15
        • 1970-01-01
        相关资源
        最近更新 更多