Hi,
I'm using Hibernate 2.1 with websphere 5 and I have the following trouble:
When saving a new object, the transaction commits ok but then Websphere rolls back the transaction.
Here is the websphere log:
--------------------
[07/06/04 18:43:25:969 CEST] 2030b532 WebAppRequest d Checking UserTransaction for Incomplete transactions
[07/06/04 18:43:25:969 CEST] 2030b532 UserTransacti > com.ibm.ejs.jts.jta.UserTransactionImpl.getStatus
[07/06/04 18:43:25:969 CEST] 2030b532 CurrentImpl > get_status
[07/06/04 18:43:25:969 CEST] 2030b532 CoordinatorIm > get_status
[07/06/04 18:43:25:969 CEST] 2030b532 CoordinatorIm < get_status
0
[07/06/04 18:43:25:969 CEST] 2030b532 CurrentImpl < get_status:
0
[07/06/04 18:43:25:969 CEST] 2030b532 UserTransacti < com.ibm.ejs.jts.jta.UserTransactionImpl.getStatus
return=Active
[07/06/04 18:43:25:969 CEST] 2030b532 WebAppRequest d Status is not STATUS_NO_TRANSACTION so rollback
[07/06/04 18:43:25:969 CEST] 2030b532 WebAppRequest u Rolling back UserTransaction
[07/06/04 18:43:25:969 CEST] 2030b532 UserTransacti > com.ibm.ejs.jts.jta.UserTransactionImpl.rollback
[07/06/04 18:43:25:969 CEST] 2030b532 CurrentSet > getUOWCoord
[07/06/04 18:43:25:969 CEST] 2030b532 CurrentImpl > getUOWCoord
[07/06/04 18:43:25:969 CEST] 2030b532 CurrentImpl < getUOWCoord
com.ibm.ejs.jts.jts.CoordinatorImpl@1696789816#tid=8
-----------------
Here is an excerpt of my hibernate.cfg.xml file:
-------------
<session-factory>
<!-- properties -->
<property name="connection.datasource">java:comp/env/SPECTT_DataSourceAlias</property>
<property name="jndi.class">com.ibm.websphere.naming.WsnInitialContextFactory</property>
<property name="dialect">net.sf.hibernate.dialect.Oracle9Dialect</property>
<property name="show_sql">true</property>
<property name="use_outer_join">true</property>
<property name="transaction.factory_class">net.sf.hibernate.transaction.JTATransactionFactory</property>
<property name="jdbc.batch_size">0</property>
-------------
This does happen for one business object only, other objects are saved perfectly.
I make sure the hibernate session is closed before control returns back to the websphere servlet container. I also ensure the hibernate session is closed in every JSP.
Any help is very welcome.
|