Consider to include in the current reference documentation since what Spring Framework release is possible declare @Transactional in an interface. I read the current information in the Using @Transactional section about the note as follows:

The Spring team recommends that you annotate methods of concrete classes with the @Transactional annotation, rather than relying on annotated methods in interfaces, even if the latter does work for interface-based and target-class proxies as of 5.0. Since Java annotations are not inherited from interfaces, interface-declared annotations are still not recognized by the weaving infrastructure when using AspectJ mode, so the aspect does not get applied. As a consequence, your transaction annotations may be silently ignored: Your code might appear to "work" until you test a rollback scenario.

I am requesting this addition of information because I have a slide from the old official material for training certification (prior to be acquired by broadcom) where is indicated it is possible since SF 5.0, but I confirmed the note shown above appears since 2.x such as:

So is clear the notable difference of versions.

Thanks for your understanding

Comment From: snicoll

Thanks for your understanding

I am actually having a hard time. Both of those versions are not supported so the added information should not matter since I am expecting training material to work against supported versions. Besides, adding such information makes the documentation more involved than it should and is definitely not warranted in this particular case.