Author: jcosta(a)redhat.com
Date: 2009-05-19 09:11:42 -0400 (Tue, 19 May 2009)
New Revision: 16597
Modified:
entitymanager/branches/v3_3_2_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java
Log:
JBPAPP-1998 - Backported: Added additional try/catch in
AbstractEntityManagerImpl.wrapStaleStateException
Modified:
entitymanager/branches/v3_3_2_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java
===================================================================
---
entitymanager/branches/v3_3_2_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java 2009-05-19
11:50:10 UTC (rev 16596)
+++
entitymanager/branches/v3_3_2_GA_CP/src/java/org/hibernate/ejb/AbstractEntityManagerImpl.java 2009-05-19
13:11:42 UTC (rev 16597)
@@ -644,12 +644,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 );
}
}
Show replies by date