I am running the stateless session bean on a WAS6 on Solaris (Server A). This bean is invoked from other WAS6 running on different Solaris machine (Server B). For some hours, I can invoke the stateless bean from Server B and everything works as normal. However, after some time on Server B, home.create() for this bean fails throwing following exception:
java.rmi.RemoteException: CORBA TRANSIENT 0x4942f307 No; nested exception is:
org.omg.CORBA.TRANSIENT: Connection state: 6 minor code: 1229124359 completed: No
org.omg.CORBA.TRANSIENT: Connection state: 6 minor code: 1229124359 completed: No
at com.ibm.rmi.iiop.Connection.checkEstablished(Connection.java:2526)
at com.ibm.rmi.iiop.Connection.getConnectionData(Connection.java:2546)
at com.ibm.rmi.iiop.ClientRequestImpl.(ClientRequestImpl.java:127)
at com.ibm.rmi.iiop.GIOPImpl.createRequest(GIOPImpl.java:139)
at com.ibm.rmi.iiop.GIOPImpl.createRequest(GIOPImpl.java:95)
at com.ibm.rmi.corba.ClientDelegate._createRequest(ClientDelegate.java:1944)
at com.ibm.rmi.corba.ClientDelegate.createRequest(ClientDelegate.java:1228)
at com.ibm.rmi.corba.ClientDelegate.createRequest(ClientDelegate.java:1161)
at com.ibm.rmi.corba.ClientDelegate.request(ClientDelegate.java:1822)
at org.omg.CORBA.portable.ObjectImpl._request(ObjectImpl.java:428)
at java.lang.reflect.Method.invoke(Native Method)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.ServicingServletState.service(StrictLifecycleServlet.java:333)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1059)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:588)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:206)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:80)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:214)
at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:116)
at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:186)
at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:615)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:439)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:672)
This exception and state can not be reproduced and I have to restart the calling server B to restore the working state. Secondly, this setup works well on the windows machine without any error.
Thiking that, the application Server B might be storing invalid cache of the remote object, I have already disabled the application JNDI cache, however problem still persist.
Has anyone come across this issue?
Thanks,