An annotation is nothing more then metadata, so only slapping an annotation on there and expect it to magically work isn't going to happen.
To make @Transactional
work you need to tell spring that you want to use annotation to drive your transactions. For this add the <tx:annotation-driven />
tag to your configuration.
However that probably isn't going to be all there is needed as you also need to configure hibernate appropriately for JTA.
A small tip instead of defining the bean, use the shorter <tx:jta-transaction-manager />
. This will do some detection on which app server you are running and configure the appropriate transaction manager for you. See http://docs.spring.io/spring/docs/current/spring-framework-reference/html/transaction.html#transaction-application-server-integration for more information.