可以导出UnicastRemoteObject,然后作为参数传递

时间:2017-07-09 20:14:21

标签: java client-server rmi remote-access remote-server

我有一个客户端服务器结构。服务器使用RMI公开服务,我们说它是:RemoteInterfaceA。该服务是使用UnicastRemoteObject.exportObject(service, port)导出的,并绑定在RMI注册表中。

然而,服务器必须更新客户端中的内容,以便客户端创建RemoteInterfaceB,然后使用UnicastRemoteObject.exportObject(update, port)导出它。但它无法创建注册表(因为与服务器不同,它无法从Internet访问)。为了给服务器提供更新存根,我将更新作为服务(RemoteInterfaceA)方法的参数传递。

它会起作用吗?

1 个答案:

答案 0 :(得分:1)

它可以正常工作,防火墙允许。正如你所说客户无法通过互联网访问,它不会为你赢。当它尝试回调客户端时,服务器将获得NetworkUnreachableException或连接超时。