2017-07-09 94 views
0

我有一个客户端服务器结构。服务器使用RMI公开服务,假设它是:RemoteInterfaceA。该服务使用UnicastRemoteObject.exportObject(service, port)进行管理,并在RMI注册表中绑定。UnicastRemoteObject可以导出,然后作为参数传递

但是,服务器必须更新客户端中的某些内容,客户端才会创建一个RemoteInterfaceB,它会使用UnicastRemoteObject.exportObject(update, port)将其导出。它不能创建一个注册表(因为不像服务器,它不能从互联网上获得)。为了向服务器提供其更新存根,我将该更新作为服务的参数(RemoteInterfaceA)方法传递。

它会工作吗?

+1

值得注意的是,通过这种设置,客户端也被认为是一个服务器,应该从可访问性角度考虑。 – user1803551

回答

1

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

相关问题