【发布时间】:2016-05-24 07:09:32
【问题描述】:
我的 RMI 测试出现问题...
服务器:
LocateRegistry.createRegistry(non-default-port);
obj = new HelloImpl();
Naming.rebind("//ip-of-server/HelloServer", obj);
客户:
RMISocketFactory.setSocketFactory(new sun.rmi.transport.proxy.RMIHttpToCGISocketFactory());
obj = (Hello) LocateRegistry.getRegistry("ip of server", non-default-port).lookup( "HelloServer");
obj.sayHello("test");
类中的所有对象都是静态的..
但我得到一个“java.rmi.NoSuchObjectException:表中没有这样的对象” - 异常一直...... 这只发生,如果我使用 HTTP 隧道通过
RMISocketFactory.setSocketFactory(new sun.rmi.transport.proxy.RMIHttpToCGISocketFactory());
如果我在没有 HTTP 隧道的情况下尝试(来自普通网络中的其他 PC),它可以正常工作!
可能是什么问题?
【问题讨论】:
标签: java exception rmi http-proxy