在我的独立java应用程序中,jms和hibernate用于满足我的要求。我使用JTA事务管理器进行事务管理。我可以在jta事务中为hibernate和jms登记XAResource,以确保我的应用程序的原子性。
答案 0 :(得分:0)
是的,这是可能的。有时称为两阶段提交,它在多个资源之间同步事务。
首先确保您支持RDBMS并启用该功能。例如,在PostgreSQL中,这意味着将max_prepared_transactions
配置参数从postgresql.conf
设置为高于0
的值。
此外,请确保您使用的JMS队列支持此事务方法。在Wildfly中,这意味着在transaction="xa"
上添加pooled-connection-factory
。