Failure to deregister localPOA from POAManager when a CORBA marshalling exception occurs ----------------------------------------------------------------------------------------
Key: GERONIMO-3373 URL: https://issues.apache.org/jira/browse/GERONIMO-3373 Project: Geronimo Issue Type: Bug Security Level: public (Regular issues) Components: CORBA Affects Versions: 2.0.x Reporter: Tim McConnell Assignee: Rick McGuire Fix For: 2.0.x In the CORBA testsuite, the marshalling testcase is failing with a NPE. For some reason, the locaPOA is not getting deregistered from the POAManager, which prevents all subsequent testcases (using that same POAName) from running successfully. As it stands now, the only way to remedy this problem is to cycle the Geronimo server. The server-side log for the marshalling exception and the subsequent test failure are shown below: Aug 2, 2007 6:30:40 PM org.apache.yoko.orb.OB.Logger_impl warning WARNING: Servant method raised a non-CORBA exception Client receives this exception as CORBA::UNKNOWN operation name: "marshalLong__org_omg_boxedRMI_long_seq1_long" id: iiop local address: 127.0.0.1:6882 remote address: 127.0.0.1:3691 java.lang.NullPointerException at org.apache.geronimo.corba.StandardServant._invoke(StandardServant.java:161) at org.apache.yoko.orb.OBPortableServer.ServantDispatcher.dispatch(ServantDispatcher.java:187) at org.apache.yoko.orb.OBPortableServer.POA_impl._OB_dispatch(POA_impl.java:1607) at org.apache.yoko.orb.OB.DispatchRequest_impl.invoke(DispatchRequest_impl.java:56) at org.apache.yoko.orb.OB.DispatchSameThread_impl.dispatch(DispatchStrategyFactory_impl.java:53) at org.apache.yoko.orb.OB.Upcall.invoke(Upcall.java:360) at org.apache.yoko.orb.OB.GIOPConnectionThreaded.execReceive(GIOPConnectionThreaded.java:500) at org.apache.yoko.orb.OB.GIOPConnectionThreaded$ReceiverThread.run(GIOPConnectionThreaded.java:63) [GC [DefNew: 32256K->170K(36288K), 0.0047093 secs] 60765K->28680K(520256K), 0.0048221 secs] [GC [DefNew: 32426K->613K(36288K), 0.0064858 secs] 60936K->29123K(520256K), 0.0066155 secs] 18:31:19,218 INFO [config] Configuring app: corba-mytime-ejb-2.0-SNAPSHOT.jar 18:31:19,421 INFO [OpenEJB] Auto-deploying ejb MyTime: EjbDeployment(deployment-id=corba-mytime-ejb-2.0-SNAPSHOT.jar/MyTime, container-id=null) 18:31:19,765 INFO [config] Loaded Module: corba-mytime-ejb-2.0-SNAPSHOT.jar [GC [DefNew: 32869K->788K(36288K), 0.0078975 secs] 61379K->29298K(520256K), 0.0080109 secs] 18:31:21,312 INFO [Enhance] You have enabled runtime enhancement, but have not specified the set of persistent classes. OpenJPA must look for metadata for every loaded class, which might increase class load times significantly. [GC [DefNew: 33044K->962K(36288K), 0.0096553 secs] 61554K->29471K(520256K), 0.0097610 secs] 18:31:21,937 INFO [startup] Assembling app: C:\TEMP\TRUNK\TC\var\temp\geronimo-deploymentUtil17539.tmpdir 18:31:22,281 INFO [startup] Jndi(name=corba-mytime-ejb-2.0-SNAPSHOT.jar/MyTime/org.apache.geronimo.testsuite.corba.mytime.MyTimeRemote) 18:31:22,328 INFO [startup] Jndi(name=corba-mytime-ejb-2.0-SNAPSHOT.jar/MyTime/org.apache.geronimo.testsuite.corba.mytime.MyTimeLocal) 18:31:22,328 INFO [startup] Created Ejb(deployment-id=corba-mytime-ejb-2.0-SNAPSHOT.jar/MyTime, ejb-name=MyTime, container=Default Stateless Container) 18:31:22,890 WARN [TSSBean] Failed CORBA Target Security Service in POA IdentityTokenNoSecurity 18:31:22,890 ERROR [GBeanInstanceState] Error while starting; GBean is now in the FAILED state: abstractName="org.apache.geronimo.testsuite/corba-mytime-ear/2.0-SNAPSHOT/car?EJBModule=corba-mytime-ejb-2.0-SNAPSHOT.jar,J2EEApplication=org.apache.geronimo.testsuite/corba-mytime-ear/2.0-SNAPSHOT/car,j2eeType=CORBATSS,name=IdentityTokenNoSecurity" org.omg.PortableServer.POAPackage.AdapterAlreadyExists: IDL:omg.org/PortableServer/POA/AdapterAlreadyExists:1.0 at org.apache.yoko.orb.OBPortableServer.POA_impl.create_POA(POA_impl.java:658) at org.apache.geronimo.corba.TSSBean.doStart(TSSBean.java:126) at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:996) at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:268) at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102) at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:124) at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:553) at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:379) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:448) at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:187) at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:530) at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:511) at org.apache.geronimo.kernel.config.SimpleConfigurationManager$$FastClassByCGLIB$$ce77a924.invoke(<generated>) at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53) at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124) at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:865) at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342) at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>) at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53) at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124) at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:865) at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168) at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213) at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784) at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1410) at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:81) at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1247) at java.security.AccessController.doPrivileged(Native Method) at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1350) at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:784) at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294) at sun.rmi.transport.Transport$1.run(Transport.java:153) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:149) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707) at java.lang.Thread.run(Thread.java:595) 18:31:22,890 INFO [JDBC] OpenJPA will now connect to the database to attempt to determine what type of database dictionary to use. To prevent this connection in the future, set your openjpa.jdbc.DBDictionary configuration property to the appropriate value for your database (see the documentation for available values). 18:31:22,890 INFO [JDBC] Using dictionary class "org.apache.openjpa.jdbc.sql.DerbyDictionary" (Apache Derby 10.2.2.0 - (485682) ,Apache Derby Embedded JDBC Driver 10.2.2.0 - (485682)). [GC [DefNew: 33218K->855K(36288K), 0.0082798 secs] 61727K->29365K(520256K), 0.0084154 secs] [GC [DefNew: 33111K->1013K(36288K), 0.0085116 secs] 61621K->29522K(520256K), 0.0086396 secs] [Full GC [Tenured[Unloading class org.apache.geronimo.corba.CSSBean] -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.