CommunicationException, в то время как ctx.lookup () клиента в GlassFish 3.1 - PullRequest
4 голосов
/ 05 мая 2011

У меня есть один класс сущностей, который реализует Serializable, и я получил эту ошибку на клиенте:

javax.naming.CommunicationException: Исключение связи для SerialContext [myEnv = {java.naming.factory.initial = com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs = com.sun.enterprise.naming, java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [Исключение корня java.rmi.MarshalException: CORBA BAD_PARAM 1398079494 Возможно; вложенными исключение: java.io.NotSerializableException: ---------- НАЧАТЬ трассировку стека на стороне сервера ---------- org.omg.CORBA.BAD_PARAM: ВНИМАНИЕ: IOP00100006: класс com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate не Сериализуемый vmcid: SUN minor код: 6 выполнено: возможно

когда я делаю SomeService serv = (SomeService)ctx.lookup("java:global/MyProject/SomeServiceImpl");

Должен ли класс Entity находиться в одном пакете как на сервере, так и на клиенте? Теперь класс Entity находится в пакете (dir) клиентского приложения и в пакете (dir), где интерфейс SomeService находится на сервере.

Ответы [ 2 ]

7 голосов
/ 05 мая 2011

Я добавил @Remote аннотацию к интерфейсу сервиса и ошибка исчезла.

0 голосов
/ 22 июля 2013

Я попробовал следующее, и все работает хорошо.

При создании InitialContext как:

Properties props = new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.enterprise.naming.SerialInitContextFactory");
props.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");
props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");

InitialContext ctx = new InitialContext(props);

и позже

myBeanService = (MyBeanService) ctx.lookup("java:global/AppName/MyBeanService");

Показывает это исключение, но если я просто позвоню так:

myBeanService = (MyBeanService) new InitialContext().lookup("java:global/AppName/MyBeanService");

Нет проблем. Проблема в свойствах JNDI.

...