关于在Linux系统中运行的Spring RMI

时间:2011-06-18 05:13:11

标签: java linux spring rmi

当我打包我的RMI应用程序并转移到Linux系统并运行它。

日志显示RMI服务正在服务器127.0.0.1上运行(由InetAddress.getLocalhost()).的方法打印

主机文件中的配置是“127.0.0.1 localhost.localdomain localhost”,所以我认为RMI服务器默认将Localhost作为服务器IP。

之后,我的RMI客户端尝试使用其真实IP(172.16.7.155)调用RMI服务器方法,这导致异常“拒绝连接127.0.0.1”。

有两种方法可以解决这个问题。一个是修改主机文件并将localhost反映到真实IP(172.16.7.155),但我无法修改它,因为其他应用程序正在使用localhost域。

另一种方法是重置在RMI服务器上映射IP地址的方法,即代替InetAddress.getLocalhost(),是否有此方法的配置?

1 个答案:

答案 0 :(得分:0)

您可以通过使用系统属性“-Djava.rmi.server.hostname = 172.16.7.155”启动Java rmi服务器进程来解决此问题(或者无论该框的公共IP是什么)。 (详情here

相关问题