Since the programmer is forced to catch all checked exception, I to throw checked exception in case of any problem. I would like to rollback on any of those expections. Writing rollbackFor=Exception.classon every @Transactional annotation is very error-prone, so I would like to tell spring, that: “whenever I write @Transactional, I mean @Transactional(rollbackFor=Exception.class)“.
I know, that I could create a custom annotation, but that seems unnatural.
So is there a way to tell spring how it should handle checked excpetions globally?
Custom Shortcut Annotations
No, this is exactly the use case for a Custom Annotation. Here’s a quote from Custom Shortcut Annotations in the Spring Reference:
Sample Code
And here’s a sample annotation for your use case:
Now annotate your services and / or methods with
@MyAnnotation(you’ll think of a better name). This is well-tested functionality that works by default. Why re-invent the wheel?