Won't Fix
Details
Assignee
UnassignedUnassignedReporter
Ramasamy, GeetaRamasamy, GeetaLabels
Original estimate
Time tracking
No time logged168h remainingComponents
Affects versions
Priority
Major
Details
Details
Assignee
Unassigned
UnassignedReporter
Ramasamy, Geeta
Ramasamy, GeetaLabels
Original estimate
Time tracking
No time logged168h remaining
Components
Affects versions
Priority
Created September 23, 2016 at 7:34 PM
Updated June 7, 2019 at 6:47 PM
Resolved June 7, 2019 at 6:47 PM
We are using Hibernate3.2.6 as the JPA for our application. The application server is WAS8.5.5. We use ejb3 for transactional support. Stateless session beans uses container manager transaction with transaction attribute "REQUIRED". After each transaction, commit happens and I can see the changes in the DB. But after every commit, an exception is generated as follows:
java.lang.UnsupportedOperationException
at org.hibernate.transaction.WebSphereExtendedJTATransactionLookup$TransactionManagerAdapter.setRollbackOnly(WebSphereExtendedJTATransactionLookup.java:103)
at org.hibernate.ejb.AbstractEntityManagerImpl.markAsRollback(AbstractEntityManagerImpl.java:440)
at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:595)
at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:637)
at org.hibernate.ejb.AbstractEntityManagerImpl.clear(AbstractEntityManagerImpl.java:348)
at com.ibm.ws.jpa.management.JPAEMPoolHelper.prepareForPooling(JPAEMPoolHelper.java:166)
at com.ibm.ws.jpa.management.OpenJPAEMPoolHelper.prepareForPooling(OpenJPAEMPoolHelper.java:41)
at com.ibm.ws.jpa.management.JPAPUnitInfo.prepareForPooling(JPAPUnitInfo.java:2106)
at com.ibm.ws.jpa.management.JPAEMPool.putEntityManager(JPAEMPool.java:195)
at com.ibm.ws.jpa.management.JPATxEntityManager.closeTxEntityManager(JPATxEntityManager.java:345)
at com.ibm.ws.jpa.management.JPATxEmInvocation.afterCompletion(JPATxEmInvocation.java:98)
at com.ibm.tx.jta.impl.RegisteredSyncs.coreDistributeAfter(RegisteredSyncs.java:359)
at com.ibm.ws.tx.jta.RegisteredSyncs.distributeAfter(RegisteredSyncs.java:320)
at com.ibm.tx.jta.embeddable.impl.EmbeddableTransactionImpl.distributeAfter(EmbeddableTransactionImpl.java:208)
at com.ibm.tx.jta.impl.TransactionImpl.postCompletion(TransactionImpl.java:2970)
at com.ibm.tx.jta.impl.TransactionImpl.internalRollback(TransactionImpl.java:2019)
at com.ibm.tx.jta.impl.TransactionImpl.internalRollback(TransactionImpl.java:1958)
at com.ibm.tx.jta.impl.TransactionImpl.rollback(TransactionImpl.java:1360)
at com.ibm.ws.tx.jta.TransactionImpl.rollback(TransactionImpl.java:3657)
at com.ibm.ws.tx.jta.TranManagerImpl.rollback(TranManagerImpl.java:479)
at com.ibm.tx.jta.impl.TranManagerSet.rollback(TranManagerSet.java:216)
at com.ibm.ejs.csi.TranStrategy.rollback(TranStrategy.java:1179)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:204)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:567)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:4486)
at com.ual.cgm.model.planesidegatesview.facade.EJSLocal0SLFlifoEventControllerEJB_3365f57b.handleFlifoEventData(EJSLocal0SLFlifoEventControllerEJB_3365f57b.java)
at com.ual.cgm.model.externalinterface.applicationservice.ExternalInterfaceManager.handleFlifoEvent(ExternalInterfaceManager.java:6444)
at com.ual.cgm.mdb.FLIFOEventHandlerMDB.onMessage(FLIFOEventHandlerMDB.java:146)
at com.ibm.ejs.jms.listener.MDBWrapper$PriviledgedOnMessage.run(MDBWrapper.java:309)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
at com.ibm.ejs.jms.listener.MDBWrapper.callOnMessage(MDBWrapper.java:266)
— Flow is as follows:
1. We have an MDB which does not participate in the transaction and MDB calls stateless session beans
2. Stateless session beans are container managed ones
Post commit, setRollbackOnly is called which throws the above exception