• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Devaka Cooray
  • Knute Snortum
  • Paul Clapham
  • Tim Cooke
Sheriffs:
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Bear Bibeault
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Ron McLeod
  • Piet Souris
  • Frits Walraven
Bartenders:
  • Ganesh Patekar
  • Tim Holloway
  • salvin francis

rollback not reached?  RSS feed

 
Ranch Hand
Posts: 257
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ranchers (and yes ... this is a [soon to be] deprecated exam guide),

Under what possible conditions would trans still be active if JPA implementations will automatically roll back transactions if any exception is thrown during the commit process?

MZ


JPA implementations will automatically roll back transactions if any exception is thrown during the commit process.




The EntityTransaction Interface
...
The following example illustrates the creation of an entity manager factory in a Java SE
environment, and its use in creating and using a resource-local entity manager:
...
Example. Grouping Operations with Transactions:


 
Creator of Enthuware JWS+ V6
Posts: 3272
296
Android Chrome Eclipse IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Charles,

The PersistenceException thrown by the persistence provider doesn't cause a rollback immediately. It will mark the transaction for rollback.

From JPA 2.0:

All instances of PersistenceException except for instances of NoResultException, NonUniqueResultException, LockTimeoutException, and QueryTimeoutException will cause the current transaction, if one is active, to be marked for rollback.


On particulair example for the transaction to be active (in the catch block) is when a LockTimeoutException is thrown from one of the methods in the try block.
 
Charles O'Leary
Ranch Hand
Posts: 257
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Frits,
Thanks!
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!