Uploaded image for project: 'Geronimo'
  1. Geronimo
  2. GERONIMO-813

ServiceContextInterceptor assumes tcp transport

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0-M4, 1.0-M5
    • 1.0-M4, 1.0-M5
    • CORBA
    • Security Level: public (Regular issues)
    • None

    Description

      When using corba to communicate with another app server, sometimes we see an exception like:

      org.omg.CORBA.MARSHAL: java.lang.ClassCastException thrown while marshaling the reply: null vmcid: 0x0 minor code: 0 completed: Yes
      at org.openejb.corba.CorbaApplicationServer.getEJBObject(CorbaApplicationServer.java:72)
      at org.openejb.server.ServerFederation.getEJBObject(ServerFederation.java:119)
      at org.openejb.proxy.ReplacementStrategy$1.writeReplace(ReplacementStrategy.java:81)
      at org.openejb.proxy.SerializationHandler.writeReplace(SerializationHandler.java:101)
      at org.openejb.proxy.EJBObjectImpl.writeReplace(EJBObjectImpl.java:115)
      at sun.reflect.GeneratedMethodAccessor107.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:896)
      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)
      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
      at org.openejb.proxy.SerializationHandler.copyObj(SerializationHandler.java:113)
      at org.openejb.corba.util.Util.writeObject(Util.java:453)
      at org.openejb.corba.StandardServant._invoke(StandardServant.java:342)
      at com.sun.corba.se.internal.POA.GenericPOAServerSC.dispatchToServant(GenericPOAServerSC.java:517)
      at com.sun.corba.se.internal.POA.GenericPOAServerSC.internalDispatch(GenericPOAServerSC.java:207)
      at com.sun.corba.se.internal.POA.GenericPOAServerSC.dispatch(GenericPOAServerSC.java:109)
      at com.sun.corba.se.internal.iiop.ORB.process(ORB.java:252)
      at com.sun.corba.se.internal.iiop.RequestProcessor.process(RequestProcessor.java:81)
      at com.sun.corba.se.internal.orbutil.ThreadPool$PooledThread.run(ThreadPool.java:106)

      After 2 days of tracing through the corba code, I discoverd this was due to an NPE in ServiceContextInterceptor due to assuming RequestInfoExt has a connection. I suspect that somehow local optimization got turned on thus leading to no connections, hence NPE's

      Attachments

        Activity

          People

            djencks David Jencks
            djencks David Jencks
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: