You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/06/11 23:54:26 UTC

svn commit: r666861 - /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/HibernateSessionManagerImpl.java

Author: hlship
Date: Wed Jun 11 14:54:26 2008
New Revision: 666861

URL: http://svn.apache.org/viewvc?rev=666861&view=rev
Log:
TAPESTRY-2454: tapestry-hibernate transaction management doesn't work as expected when commiting more than once on the same request

Modified:
    tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/HibernateSessionManagerImpl.java

Modified: tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/HibernateSessionManagerImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/HibernateSessionManagerImpl.java?rev=666861&r1=666860&r2=666861&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/HibernateSessionManagerImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/HibernateSessionManagerImpl.java Wed Jun 11 14:54:26 2008
@@ -30,19 +30,24 @@
     {
         session = source.create();
 
+        startNewTransaction();
+    }
+
+    private void startNewTransaction()
+    {
         transaction = session.beginTransaction();
     }
 
     public void abort()
     {
         transaction.rollback();
-        transaction.begin();
+        startNewTransaction();
     }
 
     public void commit()
     {
         transaction.commit();
-        transaction.begin();
+        startNewTransaction();
     }
 
     public Session getSession()