[hibernate-commits] Hibernate SVN: r16602 - entitymanager/branches/v3_2_1_GA_CP/src/java/org/hibernate/ejb.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Tue May 19 09:54:01 EDT 2009


Author: jcosta at redhat.com
Date: 2009-05-19 09:54:01 -0400 (Tue, 19 May 2009)
New Revision: 16602

Modified:
   entitymanager/branches/v3_2_1_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java
Log:
JBPAPP-1998 - Backported: Added additional try/catch in AbstractEntityManagerImpl.wrapStaleStateException

Modified: entitymanager/branches/v3_2_1_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java
===================================================================
--- entitymanager/branches/v3_2_1_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java	2009-05-19 13:45:23 UTC (rev 16601)
+++ entitymanager/branches/v3_2_1_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java	2009-05-19 13:54:01 UTC (rev 16602)
@@ -636,12 +636,16 @@
 			StaleObjectStateException sose = (StaleObjectStateException) e;
 			Serializable identifier = sose.getIdentifier();
 			if (identifier != null) {
-				Object entity = getRawSession().load( sose.getEntityName(), identifier );
-				if ( entity instanceof Serializable ) {
-					//avoid some user errors regarding boundary crossing
-					pe = new OptimisticLockException(	null, e, entity );
-				}
-				else {
+				try {
+					Object entity = getRawSession().load( sose.getEntityName(), identifier );
+					if ( entity instanceof Serializable ) {
+						//avoid some user errors regarding boundary crossing
+						pe = new OptimisticLockException( null, e, entity );
+					}
+					else {
+						pe = new OptimisticLockException( e );
+					}
+				} catch (EntityNotFoundException enfe) {
 					pe = new OptimisticLockException( e );
 				}
 			}




More information about the hibernate-commits mailing list