[jboss-jira] [JBoss JIRA] Created: (JBAS-4654) JacORB throwing spurious UNKNOWN NoSuchMethodException

Adrian Brock (JIRA) jira-events at lists.jboss.org
Fri Aug 31 06:05:18 EDT 2007


JacORB throwing spurious UNKNOWN NoSuchMethodException
------------------------------------------------------

                 Key: JBAS-4654
                 URL: http://jira.jboss.com/jira/browse/JBAS-4654
             Project: JBoss Application Server
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: IIOP service
    Affects Versions: JBossAS-4.2.1.GA
            Reporter: Adrian Brock
         Assigned To: Francisco Reverbel
             Fix For: JBossAS-5.0.0.GA


When a RemoteException contains an exception that isn't mapped to a CorbaException,
JacORB is throwing a spurious NoSuchMethodException.

e.g. the following error thrown by the server in the testsuite:

2007-08-31 11:42:48,113 TRACE [org.jboss.proxy.ejb.EjbObjectCorbaServant.bank-iiop/Account] Exception in EJBObject invocation
javax.management.MBeanException
        at org.jboss.mx.interceptor.ReflectedDispatcher.handleInvocationExceptions(ReflectedDispatcher.java:184)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:165)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
        at org.jboss.proxy.ejb.EjbObjectCorbaServant._invoke(EjbObjectCorbaServant.java:287)
        at org.jacorb.poa.RequestProcessor.invokeOperation(Unknown Source)
        at org.jacorb.poa.RequestProcessor.process(Unknown Source)
        at org.jacorb.poa.RequestProcessor.run(Unknown Source)
Caused by: java.rmi.ServerException: EJBException:; nested exception is: 
        javax.ejb.EJBException: Internal error getting results for field member owner
        at org.jboss.ejb.plugins.LogInterceptor.handleException(LogInterceptor.java:365)
        at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:209)
        at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)
        at org.jboss.ejb.EntityContainer.internalInvoke(EntityContainer.java:532)
        at org.jboss.ejb.Container.invoke(Container.java:989)
        at sun.reflect.GeneratedMethodAccessor97.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
        ... 8 more
Caused by: javax.ejb.EJBException: Internal error getting results for field member owner
        at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadArgumentResults(JDBCAbstractCMPFieldBridge.java:498)
        at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadArgumentResults(JDBCAbstractCMPFieldBridge.java:432)
        at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadInstanceResults(JDBCAbstractCMPFieldBridge.java:393)
        at org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:207)
        at org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:88)
        at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadEntity(JDBCStoreManager.java:646)
        at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadEntity(JDBCStoreManager.java:628)
        at org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity(CMPPersistenceManager.java:406)
        at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.loadEntity(CachedConnectionInterceptor.java:252)
        at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:243)
        at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)
        at org.jboss.ejb.plugins.EntityReentranceInterceptor.invoke(EntityReentranceInterceptor.java:126)
        at org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:280)
        at org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLockInterceptor.java:104)
        at org.jboss.ejb.plugins.EntityCreationInterceptor.invoke(EntityCreationInterceptor.java:76)
        at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)
        at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)
        at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)
        at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
        at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:238)
        at org.jboss.ejb.plugins.security.PreSecurityInterceptor.invoke(PreSecurityInterceptor.java:105)
        at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
        ... 15 more
Caused by: java.sql.SQLException: Got a org.omg.stub.javax.ejb._EJBObject_Stub[cl=org.jboss.mx.loading.UnifiedClassLoader3 at ff45de{ url=vfsfile:/home/ejort/jboss-head/b

Results in the following on the client:

"CORBA UNKNOWN 0 No; nested exception is: 
        org.omg.CORBA.UNKNOWN: org.omg.CORBA.portable.UnknownException  vmcid: 0x0  minor code: 0  completed: No" type="java.rmi.RemoteException">java.rmi.RemoteExcept
ion: CORBA UNKNOWN 0 No; nested exception is: 
        org.omg.CORBA.UNKNOWN: org.omg.CORBA.portable.UnknownException  vmcid: 0x0  minor code: 0  completed: No
        at com.sun.corba.se.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:282)
        at javax.rmi.CORBA.Util.mapSystemException(Util.java:67)
        at org.jboss.proxy.ejb.DynamicIIOPStub.invoke(DynamicIIOPStub.java:148)
        at org.jboss.test.bankiiop.interfaces._Account_Stub.getPrimaryKey(Unknown Source)
        at org.jboss.test.bankiiop.test.BankStressTestCase.testTeller(BankStressTestCase.java:88)
        at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
        at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
        at junit.extensions.TestSetup.run(TestSetup.java:25)
Caused by: org.omg.CORBA.UNKNOWN: org.omg.CORBA.portable.UnknownException  vmcid: 0x0  minor code: 0  completed: No
        at org.jacorb.orb.SystemExceptionHelper.read(Unknown Source)
        at org.jacorb.orb.ReplyReceiver.getReply(Unknown Source)
        at org.jacorb.orb.Delegate.invoke_internal(Unknown Source)
        at org.jacorb.orb.Delegate.invoke(Unknown Source)
        at org.omg.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:457)
        at org.jboss.proxy.ejb.DynamicIIOPStub.invoke(DynamicIIOPStub.java:123)
        ... 23 more
Caused by: java.lang.NoSuchMethodException: org.omg.CORBA.portable.UnknownException.<init>(java.lang.String, int, org.omg.CORBA.CompletionStatus)
        at java.lang.Class.getConstructor0(Class.java:2678)
        at java.lang.Class.getConstructor(Class.java:1629)
        ... 29 more

The NoSuchMethodException is obviously not the cause.
It comes from jacorb assuming that all Corba SystemExceptions have a constructor of a certain signature
(something that is not true for UnknownException).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list