Hello mates.
We have a requirement in which a legacy logic is present as ejb2 bean which is running in 11g container. And we have a new application which is developed in jdk 8 running in weblogic 12c.
The 12c application invokes the remote bean using JDNI lookup by passing the t3 url and context of the remote server in which the bean is deployed.
We see unmarshall error is thrown in the application logs. We have checked the connectivity using telnet command and it is working fine as well. Is it not possible to invoke a EJB2.0 running in 11g container from 12c? . In the old legacy flow, both the producer and consumer of the EJB are in 11g and flow is working fine. The issue we are seeing one the producer is running in 11g and consumer is running in 12c container.
Below is the logs with the exception.
javax.naming.CommunicationException: invoking method lookup(Ljava.lang.String;Ljava.util.Hashtable;) caused java.io.IOException: RJVM has already been shutdown, please check method's implementation for the cause ; nested exception is:
java.io.IOException: RJVM has already been shutdown [Root exception is java.rmi.UnmarshalException: invoking method lookup(Ljava.lang.String;Ljava.util.Hashtable;) caused java.io.IOException: RJVM has already been shutdown, please check method's implementation for the cause ; nested exception is:
java.io.IOException: RJVM has already been shutdown]
at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:78)
at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:36)
at weblogic.jndi.internal.WLContextImpl.translateException(WLContextImpl.java:541)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:453)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:435)
at javax.naming.InitialContext.lookup(InitialContext.java:417)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:286)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:260)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:137)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:350)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
Caused by: java.rmi.UnmarshalException: invoking method lookup(Ljava.lang.String;Ljava.util.Hashtable;) caused java.io.IOException: RJVM has alreadybeen shutdown, please check method's implementation for the cause ; nested exception is:
java.io.IOException: RJVM has already been shutdown
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:564)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:313)
at weblogic.jndi.internal.ServerNamingNode_12213_WLStub.lookup(Unknown Source)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:449)
... 48 more
Caused by: java.io.IOException: RJVM has already been shutdown
at weblogic.rjvm.RJVMImpl.addPendingResponse(RJVMImpl.java:726)
at weblogic.rjvm.RJVMImpl.send(RJVMImpl.java:1165)
at weblogic.rjvm.MsgAbbrevOutputStream.flushAndSend(MsgAbbrevOutputStream.java:448)
at weblogic.rjvm.MsgAbbrevOutputStream.sendRecv(MsgAbbrevOutputStream.java:458)
at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:128)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:552)
... 51 more
Caused by: java.io.IOException: RJVM has already been shutdown
at weblogic.utils.StackTraceDisabled.unknownMethod()