ari-ban / glassfish-genericjmsra

0 stars 0 forks source link

DeliveryType=Synchronous, SupportsXA=false causes NullPointerException #41

Closed arinban closed 14 years ago

arinban commented 14 years ago

If you deploy GenericJMSRA with DeliveryType=Synchronous and SupportsXA=false and deploy a MDB then after the MDB's onMessage() returns the following exception is logged:

SEVERE: java.lang.NullPointerException at com.sun.genericra.inbound.sync.SyncDeliveryHelper.runOnceStdNoXA(SyncDeliveryHelper.java:435) at com.sun.genericra.inbound.sync.SyncDeliveryHelper.deliver(SyncDeliveryHelper.java:211) at com.sun.genericra.inbound.sync.SyncDeliveryHelper.deliver(SyncDeliveryHelper.java:194) at com.sun.genericra.inbound.sync.SyncWorker.run(SyncWorker.java:125) at com.sun.enterprise.connectors.work.OneWork.doWork(OneWork.java:92) at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:492) at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:528)

This does not appear to prevent the transaction being committed but it suggests that something is going wrong.

Environment

Operating System: All Platform: All

Affected Versions

[current]

arinban commented 6 years ago
arinban commented 14 years ago

@glassfishrobot Commented Reported by nigeldeakin

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said: Assigning to me

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said: The exception is caused by a bug in SyncDeliveryHelper.runOnceStdNoXA, which appears to contain an incomplete implementation of hold-unitl-ack mode, which meant that the coord variable was not initialised.

The fix is to simply remove the HUA code from this method.

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said: Set target milestone as "not determined" since issue tracker doesn't allow anything more specific.

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said:

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said:

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said: The cause of this bug is that the JNDI location where the TransactionManager can be found has changed. In Glassfish 2 it is "java:comp/UserTransaction" whereas in Glassfish 3 it is "java:appserver/TransactionManager". The TxMgr class has been extended to try both in turn.

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said: Ignore previous comment, which was added to the wrong bug.

arinban commented 14 years ago

@glassfishrobot Commented nigeldeakin said: Fixed in 2.1a

arinban commented 14 years ago

@glassfishrobot Commented Was assigned to nigeldeakin

arinban commented 7 years ago

@glassfishrobot Commented This issue was imported from java.net JIRA GENERICJMSRA-41

arinban commented 14 years ago

@glassfishrobot Commented Marked as fixed on Wednesday, September 15th 2010, 2:14:16 am