小编典典

使用单个RMI注册表

java

我一直在将RMI用于当前正在处理的项目,并且希望将多个主机绑定到单个RMI注册表。

但是,当我尝试这样做时,我收到一条错误消息:

java.rmi.AccessException:不允许Registry.Registry.bind;origin / 192.168.0.9是非本地主机

我这样做是在谷歌上进行的,似乎RMI默认情况下会阻止远程主机进行绑定,我想知道是否有某种方法可以覆盖或绕过此方法?

如果有人对如何解决此问题有任何建议,我们将不胜感激,我尝试使用其他策略文件并覆盖安全管理器,但似乎没有任何效果。


阅读 150

收藏
2020-11-16

共1个答案

小编典典

谢谢大家的回答,最后我想到的解决方案是使用Cajo
Framework,
它提供了一个非常灵活的分发系统,并允许我按照自己的意愿处理注册表。它也可以在NAT,防火墙和HTTP代理之后工作,这非常有用。

我相信rndm.buoy建议的代理方法在某些情况下会起作用,但在某些系统上可能会很麻烦。RMI似乎与错误的网络接口相关联,在基于Debian的Linux发行版上运行时,我尤其遇到此问题。

2020-11-16