File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Spring and the fly likes Problem using @Transactional with jtaTransactionManager Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Frameworks » Spring
Bookmark "Problem using @Transactional with jtaTransactionManager" Watch "Problem using @Transactional with jtaTransactionManager" New topic

Problem using @Transactional with jtaTransactionManager

Kuldeep Tewari
Ranch Hand

Joined: May 22, 2006
Posts: 35
Hi Ranchers,

I'm writing code to schedule sending emails to users with different frequencies, using Spring and Quartz. In my code, I first save the data related to email(to, from, content etc details) in a database table and then I save the scheduling frequency information in quartz tables. here is the method:

This is how I set JTATransactionManager in spring config:

I thought that if the statement fails then the data entered by the statement should be rolled back, but it doesn't.

Please tell where i'm making a mistake.

Thanks in advance.
Kuldeep Tewari
Ranch Hand

Joined: May 22, 2006
Posts: 35
I found the answer:

By default, the rollback is done only for runtime exceptions and not when a checked exception is thrown. I set the element "rollbackFor=Exception.class" with the @Transactional and now rollback happens for all exceptions.
I agree. Here's the link:
subject: Problem using @Transactional with jtaTransactionManager
jQuery in Action, 3rd edition