我有一个服务器端应用程序,试图通过RMI共享访问权限。该应用程序具有“项目”的抽象表示,该项目最通常表示一个文件,但几乎可以表示任何数据,包括流(流广播,来自传感器的流数据)。因此,可以通过InputStream访问任何“项目”(如果可以知道,还可以使用一种方法来指示文件大小)。

尽管RMI足以满足其余应用程序的需求,但它实际上无法处理InputStreams。

令我惊讶的是,在使用RMI时访问InputStreams的需求必定是一个普遍的问题。所以我想知道:
推荐的解决方案是什么?

请注意,我需要客户端同时发送和接收输入流,并且序列化为字节数组是不可行的,因为其中一些实际上确实表示数据流,而不仅仅是文件。

最佳答案

我使用RMIIO库通过RMI共享流。

查看类别:com.healthmarketscience.rmiio.RemoteInputStreamcom.healthmarketscience.rmiio.RemoteOutputStream

另请参阅:Remote streaming reference with RMIIO

10-06 15:58