Hi everybody.
We have the following scenario:
We use a JEE-application that works on my colleagues computer, but not on mine. We have installed the same software versions, same sourcecode through subversion and same application server profile. We also do not find any differences concerning the configuration.
We use WAS 6.1.0.9 (included in RAD 7) with its default v5 messaging provider (through SIB), Oracle 10.2.0.3 as database and IBM client application for JMS to send the request message. I send a JMS message to the SIB queue, it is received, the business logic is executed (through an MDB and a stateless - both
EJB 2.1), and then the answer should be sent to the response queue. While trying to send the response, the following exception occurs and a rollback is done.
Again: The same stuff (WAS profile, sourcecode, db schemas, ...) works at my colleagues computer... I searched and tried many proposals in this forum and other forums, but nothing helped, e.g.:
- XA
JDBC resource is configured correctly, test-connection works.
- activating XA for the oracle database by using some sql scripts as described on the ibm website
- deleting the translong folder: C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\tranlog\CellE2EFM\NodeE2EFM\server1\transaction\tranlog
- setting the custom property "transactionBranchesLooselyCoupled" to true
- reinstalling the whole oracle db and re-doing all necessary configuration
- re-importing the was profile
Can you pleas help me - what else can I try do resolve the problem?
Here is the exception (it seems that there is a problem during the prepare phase of the XA / 2PC transaction at the MQ-XA-resource):
[27.04.10 08:05:29:915 GMT] 000000b3 XATransaction E J2CA0027E: Beim Aufrufen von prepare für einen XA-Ressourcenadapter aus Datenquelle JMS$toTimbHistoryReplyQueueCF$JMSManagedConnection@1661887246 ist in der Transaktion mit der ID {XidImpl: formatId(57415344), gtrid_length(36), bqual_length(54), data(000001283e4c84dd0000000100000003f8919396faba5619243d0afaa6e9f20769e68d80000001283e4c84dd0000000100000003f8919396faba5619243d0afaa6e9f20769e68d80000000010000000000000000000000000002)} eine Ausnahme eingetreten: javax.transaction.xa.XAException: XA-Operation fehlgeschlagen, siehe errorCode
at com.ibm.mq.MQXAResource.prepare(MQXAResource.java:254)
at com.ibm.ejs.jms.JMSManagedSession$JMSXAResource.prepare(JMSManagedSession.java:1503)
at com.ibm.ejs.j2c.XATransactionWrapper.prepare(XATransactionWrapper.java:1110)
at com.ibm.ws.Transaction.JTA.JTAXAResourceImpl.prepare(JTAXAResourceImpl.java:210)
at com.ibm.ws.Transaction.JTA.RegisteredResources.prepareResource(RegisteredResources.java:1387)
at com.ibm.ws.Transaction.JTA.RegisteredResources.distributePrepare(RegisteredResources.java:1690)
at com.ibm.ws.Transaction.JTA.TransactionImpl.prepareResources(TransactionImpl.java:2076)
at com.ibm.ws.Transaction.JTA.TransactionImpl.stage1CommitProcessing(TransactionImpl.java:1637)
at com.ibm.ws.Transaction.JTA.TransactionImpl.processCommit(TransactionImpl.java:1593)
at com.ibm.ws.Transaction.JTA.TransactionImpl.commit(TransactionImpl.java:1528)
at com.ibm.ws.Transaction.JTA.TranManagerImpl.commit(TranManagerImpl.java:237)
at com.ibm.ws.Transaction.JTA.TranManagerSet.commit(TranManagerSet.java:162)
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:756)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
.
[27.04.10 08:05:29:930 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.29_2.txt für das Ereignis geöffnet.
[27.04.10 08:05:29:977 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.29_2.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:040 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_0.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:055 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_0.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0046E: Der Versuch des Transaction Manager, eine Transaktionsressource vorzubereiten, hat zu einem Fehler geführt. Der Fehlercode ist 2. Der Stack-Trace zur Ausnahme wird im Folgenden angezeigt: javax.transaction.xa.XAException: XA-Operation fehlgeschlagen, siehe errorCode
at com.ibm.mq.MQXAResource.prepare(MQXAResource.java:254)
at com.ibm.ejs.jms.JMSManagedSession$JMSXAResource.prepare(JMSManagedSession.java:1503)
at com.ibm.ejs.j2c.XATransactionWrapper.prepare(XATransactionWrapper.java:1110)
at com.ibm.ws.Transaction.JTA.JTAXAResourceImpl.prepare(JTAXAResourceImpl.java:210)
at com.ibm.ws.Transaction.JTA.RegisteredResources.prepareResource(RegisteredResources.java:1387)
at com.ibm.ws.Transaction.JTA.RegisteredResources.distributePrepare(RegisteredResources.java:1690)
at com.ibm.ws.Transaction.JTA.TransactionImpl.prepareResources(TransactionImpl.java:2076)
at com.ibm.ws.Transaction.JTA.TransactionImpl.stage1CommitProcessing(TransactionImpl.java:1637)
at com.ibm.ws.Transaction.JTA.TransactionImpl.processCommit(TransactionImpl.java:1593)
at com.ibm.ws.Transaction.JTA.TransactionImpl.commit(TransactionImpl.java:1528)
at com.ibm.ws.Transaction.JTA.TranManagerImpl.commit(TranManagerImpl.java:237)
at com.ibm.ws.Transaction.JTA.TranManagerSet.commit(TranManagerSet.java:162)
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:756)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0086I: XAException in der Vorbereitungsphase für Transaktion 000001283E4C84DD0000000100000003F8919396FABA5619243D0AFAA6E9F20769E68D80000001283E4C84DD0000000100000003F8919396FABA5619243D0AFAA6E9F20769E68D8000000001. Lokale Ressourcen folgen.
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0088I: XATransactionWrapper@ 7e887e88 XAResource: com.ibm.ejs.jms.JMSManagedSession$JMSXAResource@7e827e82 enlisted: true mcWrapper.hashCode()2078440418 hat eine XAException mit Fehlercode 2 festgestellt.
[27.04.10 08:05:30:055 GMT] 000000b3 RegisteredRes E WTRN0089I: XATransactionWrapper@ 5b685b68 XAResource: com.ibm.ejs.jms.JMSManagedSession$JMSXAResource@5b1e5b1e enlisted: true mcWrapper.hashCode()817508538: Votum: none.
[27.04.10 08:05:30:102 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_1.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:102 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_1.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:118 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_2.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:134 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_2.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:149 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_3.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:149 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_3.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:165 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_4.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:212 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_4.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:227 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_5.txt für das Ereignis geöffnet.
[27.04.10 08:05:30:227 GMT] 000000b3 ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC hat die Datenstromdatei C:\IBM\RAD\SDP70\runtimes\base_v61\profiles\AppSrvE2EFM\logs\ffdc\server1_61846184_10.04.27_08.05.30_5.txt für das Ereignis geschlossen.
[27.04.10 08:05:30:227 GMT] 000000b3 ServerSession W WMSG0031E: Bei der Verarbeitung einer JMS-Nachricht für MDB ZustandAbfragenMDB, JMS-Destination jms/fromTimbHistoryRequestQueue ist eine Ausnahme eingetreten: javax.ejb.TransactionRolledbackLocalException: ; nested exception is: com.ibm.websphere.csi.CSITransactionRolledbackException:
com.ibm.websphere.csi.CSITransactionRolledbackException:
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:769)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
javax.ejb.TransactionRolledbackLocalException: ; nested exception is: com.ibm.websphere.csi.CSITransactionRolledbackException:
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:769)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:181)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:581)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3910)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:107)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:481)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
Caused by: com.ibm.websphere.csi.CSITransactionRolledbackException:
... 8 more
Thank you a lot for your help. If you need more information about my configuration, please tell me...
Greetings Kai