具有多个数据源的多个servlet上下文中的事务传播

时间:2012-09-20 07:51:54

标签: spring transactions rmi propagation

我们已经在集群架构中模块化我们的应用程序,例如使用hibernate和多个war文件打包的不同数据源的多个servlet上下文。例如:moldule1-> hibernate sessionfactrory - > datasource 1(module1.war),moldule2-> hibernate sessionfactrory - > datasource 2(module2.war)....

Spring RMI用于集成module1和module2服务。

这里我的问题是,如何在这些模块之间传播事务,这样当模块2无法插入时,module1应该回滚?

1 个答案:

答案 0 :(得分:0)

根据Spring documentation

,您不能不使用EJB
  

Spring对RMI的支持,您可以通过RMI基础架构透明地公开您的服务。完成此设置后,您基本上具有类似于远程EJB的配置,除了没有标准支持安全上下文传播或远程事务传播

...和

  

最后但同样重要的是, EJB优于RMI,因为它支持基于角色的标准身份验证和授权以及远程事务传播