2

我有一个在 Spring 2.5.6、Hibernate 3.4(Hibernate 作为 JPA 提供程序)和 Tomcat 6 下运行的 Java Web 应用程序。我让它使用一个 DB 模式/持久性单元,但现在需要连接到 2 个模式/持久性单元. 我可以在不迁移到 JBoss 或 Glassfish 等 J2EE 容器的情况下执行此操作吗?我是否需要使用 JOTM 和全局/XA 事务之类的东西?

4

2 回答 2

4

如果您需要在同一个事务中访问多个事务资源,则需要 JTA,因此需要 JTA 事务管理器。在 Spring 级别,这意味着使用 aJtaTransactionManager而不是你的JpaTransactionManager. 而且,如果您不想迁移到真正的 Java EE 应用程序服务器,则确实必须使用独立的事务管理器,例如 JOTM 或 Atomikos。我更喜欢后者,但就我个人而言,我会转向 GlassFish。

于 2010-06-24T22:37:50.177 回答
2

如果你正在使用带有 spring/hibernate 的 Tomcat,那么使用 JBoss 的事务管理器来创建 JTA 事务管理器 bean。

这是一个简短的教程http://ingenious-camel.blogspot.com/2012/01/how-to-use-jboss-transactions-in-spring.html

于 2012-01-09T22:40:26.847 回答