есть проблема с моим RMI тест ...Java RMI - NoSuchObjectException: нет такого объекта в таблице
Сервер:
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");
(только через HTTP прокси-сервер!)
Все объекты являются статическими в классе.
Но я получаю «java.rmi.NoSuchObjectException: нет такого объекта в таблице» -Exception все время .. Это происходит только тогда, если я использовать HTTP-туннелирование через
RMISocketFactory.setSocketFactory(new sun.rmi.transport.proxy.RMIHttpToCGISocketFactory());
Если я попробовать его без HTTP Tunneling (с другого компьютера в обычном веб-сайте), он отлично работает!
В чем может быть проблема?
благодарит за ваш ответ! Объявлено как уже статичным в моем клиенте: static Registry reg; \t Статический Hello obj; но это не сработало. – naja08
'createRegistry()' вызывается сервером, а не клиентом. Я имею в виду сервер. – EJP
Пробовал это тоже .. все еще не работает:/ – naja08