You can put @Transactional on java interfaces. The classes that implement that interface will then be enhanced to with the transactional support.
There is a situation where this enhancement does not take effect. Specifically when you are:- using the Eclipse IDE Enhancement plugin- Have a class that implements an interface- Later, change the interface via adding @Transactional
The issue is that the enhancement that should occur on all classes that implement that interface will not occur until those classes are re-saved.
To workaround this issue: make sure all classes that implement that changed interface are saved after the change to the interface. Perform a project - clean for example.
There is no real fix for this bug.
Not a lot of point keeping it around.
Will close as there is no real known solution for it.