[jbossts-issues] [JBoss JIRA] (JBTM-1790) If xaNodeName is not set then a nullpointerexception is raised rather than an informative exception

Gytis Trikleris (JIRA) jira-events at lists.jboss.org
Fri Jul 5 08:30:21 EDT 2013


     [ https://issues.jboss.org/browse/JBTM-1790?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gytis Trikleris updated JBTM-1790:
----------------------------------

              Status: Pull Request Sent  (was: Open)
    Git Pull Request: https://github.com/jbosstm/narayana/pull/368


I've added simple checking or exceptions in the places where null pointer exception can be thrown by using TxControl.getXANodeName(). It works for all JTS tests which throw NullPointerException after setting node name to null.

However, there are other places which utilise node names as null, but they do the checking for that, so I didn't touch them.
                
> If xaNodeName is not set then a nullpointerexception is raised rather than an informative exception
> ---------------------------------------------------------------------------------------------------
>
>                 Key: JBTM-1790
>                 URL: https://issues.jboss.org/browse/JBTM-1790
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: JTA, JTS
>    Affects Versions: 5.0.0.M3
>            Reporter: Tom Jenkinson
>            Assignee: Gytis Trikleris
>             Fix For: 5.0.0.M4
>
>   Original Estimate: 30 minutes
>          Time Spent: 30 minutes
>  Remaining Estimate: 0 minutes
>
> TxControl needs a static initialization block reintroducing/similar such that if CoordinatorEnvironmentBean::getNodeIdentifier() returns null it should log a fatal error and fail to initialize.
> Currently for JTS an obscure stack trace is printed:
>     [INFO] --- exec-maven-plugin:1.2.1:java (default-cli) @ iiop-jts-client ---
>     Jun 21, 2013 6:08:11 PM com.arjuna.orbportability.internal.utils.InitLoader createInstance
>     INFO: ARJUNA021027: Loading PreInitLoader class - com.arjuna.ats.internal.jts.context.ContextPropagationManager
>     Jun 21, 2013 6:08:11 PM org.jacorb.config.JacORBConfiguration init
>     WARNING: jacorb.home unset! Will use '.'
>     Jun 21, 2013 6:08:11 PM org.jacorb.config.JacORBConfiguration init
>     WARNING: File ./jacorb.properties for configuration jacorb not found
>     Jun 21, 2013 6:08:11 PM org.jacorb.config.JacORBConfiguration init
>     INFO: configuration jacorb loaded from classpath
>     Jun 21, 2013 6:08:11 PM com.arjuna.orbportability.internal.utils.InitLoader createInstance
>     INFO: ARJUNA021027: Loading PostInitLoader class - com.arjuna.ats.internal.jts.recovery.RecoveryInit
>     Jun 21, 2013 6:08:11 PM com.arjuna.orbportability.internal.utils.InitLoader createInstance
>     INFO: ARJUNA021027: Loading PostInitLoader class - com.arjuna.ats.jts.utils.ORBSetup
>     Jun 21, 2013 6:08:11 PM com.arjuna.ats.arjuna.recovery.TransactionStatusManager addService
>     INFO: ARJUNA012163: Starting service com.arjuna.ats.arjuna.recovery.ActionStatusService on port 43728
>     Jun 21, 2013 6:08:11 PM com.arjuna.ats.internal.arjuna.recovery.TransactionStatusManagerItem <init>
>     INFO: ARJUNA012337: TransactionStatusManagerItem host: 127.0.0.1 port: 43728
>     Jun 21, 2013 6:08:11 PM com.arjuna.ats.arjuna.recovery.TransactionStatusManager start
>     INFO: ARJUNA012170: TransactionStatusManager started on port 43728 and host 127.0.0.1 with service com.arjuna.ats.arjuna.recovery.ActionStatusService
>     java.rmi.RemoteException: CORBA UNKNOWN 30001 No; nested exception is:
>             org.omg.CORBA.UNKNOWN: java.lang.NullPointerException  vmcid: 0x7000  minor code: 1329  completed: No
>             at com.sun.corba.se.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:315)
>             at javax.rmi.CORBA.Util.mapSystemException(Util.java:83)
>             at com.sun.corba.se.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:164)
>             at com.sun.corba.se.spi.orbutil.proxy.CompositeInvocationHandlerImpl.invoke(CompositeInvocationHandlerImpl.java:79)
>             at com.sun.proxy.$Proxy7.hello(Unknown Source)
>             at org.jboss.qa.IIOPTesting.main(IIOPTesting.java:27)
>             at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>             at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>             at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>             at java.lang.reflect.Method.invoke(Method.java:601)
>             at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
>             at java.lang.Thread.run(Thread.java:722)
>     Caused by: org.omg.CORBA.UNKNOWN: java.lang.NullPointerException  vmcid: 0x7000  minor code: 1329  completed: No
>             at com.arjuna.ats.internal.jts.orbspecific.coordinator.ArjunaTransactionImple.get_txcontext(ArjunaTransactionImple.java:1300)
>             at com.arjuna.ArjunaOTS.ArjunaTransactionPOATie.get_txcontext(ArjunaTransactionPOATie.java:129)
>             at com.arjuna.ArjunaOTS._ArjunaTransactionStub.get_txcontext(_ArjunaTransactionStub.java:788)
>             at com.arjuna.ats.jts.orbspecific.jacorb.interceptors.interposition.InterpositionClientRequestInterceptorImpl.send_request(InterpositionClientRequestInterceptorImpl.java:196)
>             at org.jacorb.orb.portableInterceptor.ClientInterceptorIterator.invoke(ClientInterceptorIterator.java:95)
>             at org.jacorb.orb.portableInterceptor.AbstractInterceptorIterator.iterate(AbstractInterceptorIterator.java:67)
>             at org.jacorb.orb.portableInterceptor.ClientInterceptorIterator.iterate(ClientInterceptorIterator.java:68)
>             at org.jacorb.orb.ClientInterceptorHandler.invokeInterceptors(ClientInterceptorHandler.java:265)
>             at org.jacorb.orb.ClientInterceptorHandler.handle_send_request(ClientInterceptorHandler.java:99)
>             at org.jacorb.orb.Delegate.invoke_internal(Delegate.java:996)
>             at org.jacorb.orb.Delegate.invoke(Delegate.java:957)
>             at com.sun.corba.se.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:151)
>             ... 9 more

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jbossts-issues mailing list