Я использую WebLogic 12c и развернул несколько компонентов как часть файла EAR.У меня также есть автономный клиент, который я запускаю из Eclipse, который пытается получить доступ к удаленным EJB.Я использую аннотации и, следовательно, глобальные переносимые имена JNDI из EJB 3.1 (например, java: global / ifactory / ifactory-ejb-4.0.0 / BomServiceBean! Com.icumed.ifactory3.service.BomServiceRemote).
Однако, когда удаленный клиент пытается вызвать EBJ, я получаю следующее исключение:
11:45:03,400 ERROR [com.icumed.ifactory3.service.RemoteServiceFactoryImpl] [getService('java:global/ifactory/ifactory-ejb-4.0.0/BomServiceBean!com.icumed.ifactory3.service.BomServiceRemote')] Context may not be null
java.lang.AssertionError: Context may not be null
at weblogic.j2eeclient.SimpleContext.checkForNameUnderRemoteNode(SimpleContext.java:103)
at weblogic.j2eeclient.SimpleContext.internalLookup(SimpleContext.java:68)
at weblogic.j2eeclient.SimpleContext.lookup(SimpleContext.java:39)
at weblogic.jndi.SimpleContext.lookup(SimpleContext.java:86)
at javax.naming.InitialContext.lookup(InitialContext.java:411)
at com.icumed.ifactory3.service.RemoteServiceFactoryImpl.getService(RemoteServiceFactoryImpl.java:323)
Боб выглядит так:
@Stateless
public class BomServiceBean extends AbstractSessionBean implements LocalBomService, BomServiceRemote
{
...
}
Дополнительная информация: эта ошибка возникает, когдаwlthint3client.jar и затем wlclient.jar находятся в пути к классам.
Когда только путь wlthint3client.jar находится в пути к классам, исключение составляет
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long
at weblogic.rmi.internal.StubInfo.getEnvQueriedJNDITimeout(StubInfo.java:256)
at weblogic.rmi.internal.StubInfo.setEnvQueriedJNDITimeout(StubInfo.java:242)
at weblogic.rmi.internal.StubInfo.readObject(StubInfo.java:238)
Когда wlclient.jar и затем wlthint3client.jarнаходятся на пути к классам, WebLogic печатает это сообщение журнала:
The connection attempt was rejected because the incoming protocol iiop is not enabled on channel Default[iiop][12]
Как мне исправить это?