私が正しく理解しているかどうかはわかりませんが、Spring と JUST JMS の @Transactional アノテーションを使用して宣言的なトランザクション管理を単純に行おうとしている場合は、単に <tx:annotation-driven transaction-manager = "myTransactionManager" /> を使用して、次に、「myTranactionManager」に対して、タイプ JmsTransactionManager の Bean を登録します。
@Bean public PlatformTransactionManager myTranactionManager (){
return new JmsTransactionManager( this.connectionFactory());
}
これで、アノテーションを通常どおり使用できるようになり、JMS インタラクションがトランザクションにラップされます。
@Transactional
public void doSomethingWithJms(){
jmsTemplate.send(...);
jmsTemplate.convertAndSend(...)
}
JMSやJDBC などの複数のリソースを操作することが目標の場合は、JTA を使用する必要があります。JTA (JPAおよびJMS 用) のセットアップ方法については、このブログ記事http://blog.springsource.com/2011/08/15/configuring-spring-and-jta-without-full-java-ee/を参照してください。