Forums Register Login
Possible to run an EJB3 timer without transaction?
Is there a way to run an EJB3 timer without it being inside a transaction?

Sometimes the methods run by the timer throw exceptions, and I'd like to be able to update a database with a failed flag if that happens. But the EJBTransactionRolledbackException that gets thrown prevents me from doing this.

I hope you can disable the transaction by setting the transaction attribute to Never or Not supported . But I havent tried of this scenario.
I was able to solve the problem by not throwing Timer exceptions up to a common exception handling method. Instead I caught them and dealt with them in the method in which they were caught.

It was turning out that if I threw an exception up the method chain, EJB would automatically embed it in some kind of transaction exception, which meant I couldn't write something to the database notifying people that an exception had occurred. If I didn't throw the exception, then there was no transaction exception involved.
Thanks for sharing Steve, interesting...

The only taste of success some people get is to take a bite out of you. Or this tiny ad:
Rocket Oven Kickstarter - from the trailboss

This thread has been viewed 1264 times.

All times above are in ranch (not your local) time.
The current ranch time is
Jul 19, 2018 01:18:17.