java - Java 程序与非 JDK 对象之间的通信

标签 java rmi xml-rpc rpc xmlrpcclient

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

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

实用程序.jar:

class MyClassRequestParams { ... }

class MyClassReturnParams { ... }

客户端.jar:

// Server creation
...

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

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

服务器.jar:

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

   // do processing

   return response;

}

最佳答案

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

RMI tutorial使用一个带有自定义任务接口(interface)的示例,该接口(interface)由不是“标准”JDK 类的 Pi 自定义类实现。

关于java - Java 程序与非 JDK 对象之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8669114/

相关文章:

java - Bukkit - 使用 VaultAPI 的 NPE(聊天)

java - 从Java文件运行hadoop命令

java - 如何确保 RMI 操作的原子性?

java - JavaRMI 应用程序中的 SSL 握手错误

CodeIgniter xmlrpc 没有收到 '200 ok'

python - 什么可能导致 xmlrpclib.ResponseError : ResponseError()?

Java:对象中的数组属性

java - 如何在RMI项目中添加多线程?

python - 如何使用 CherryPy 进行 XMLRPC

java - Applet Java 控制台 : remove trace message size limit