Injecting a UserTransaction and then have a try catch with rethrow for setting rollback manually? I'd rather have the interceptor do this for me. Not sure if it's such an edge case, but my stereotype annotation contains all the rollback exception configuration of the Transactional interceptor annotation so implementing this logic in Java to roll back the TX is duplication. Anyway, I hope you understand that this can become problematic especially because of unexpected/runtime exceptions. I suppose there are other people out there that just like me didn't consider testing the transactional behavior because it should be a no-brainer. Annotating the observer class instead of the method with the stereotype works like a charm. It's just that it wasn't obvious that the stereotype wasn't considered when annotating it at the observer method level. |