从客户端调用RMIregistry的问题

时间:2012-09-11 06:06:12

标签: java rmi rmiregistry

我是第一次尝试使用RMI注册表进行远程调用。我编写了实现它的接口和类。我试图调用它时遇到问题。我通过给start rmiregistry开启了我的Windows机器中的rmiregistry,这打开了一个新的窗口。

客户端prg看起来像:

 String host = "172.27.49.199:1099";
try {
  System.out.println(LocateRegistry.getRegistry());  
  Registry registry = LocateRegistry.getRegistry(host,0);

    Details stub = (Details) registry.lookup("Hello");
    String response = stub.Name();
    System.out.println("response: " + response);
} catch (Exception e) {
    System.err.println("Client exception: " + e.toString());
    e.printStackTrace();
}

我对host需要给出的价值感到困惑。

我试过给:

(a)http://localhost (b)http://localhost:1099

离开java.net.UnknownHostException: http://localhost:1099

更新

将主机更改为 My_Sys_IP 后,我丢失了java.net.UnknownHostException但最终以Client exception: java.rmi.NotBoundException: Details

结束

1 个答案:

答案 0 :(得分:0)

我不知道你为何感到困惑。 host是主机名或IP地址。 Javadoc没有说明使用网址。

它也没有说你可以传递零作为端口号。你不能。如果您不知道它应该是什么,请省略该参数。