Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 使用同一数据库驻留在同一服务器上的跨web服务的原子事务_Hibernate_Spring_Jax Ws_Java Metro Framework_Acid - Fatal编程技术网

Hibernate 使用同一数据库驻留在同一服务器上的跨web服务的原子事务

Hibernate 使用同一数据库驻留在同一服务器上的跨web服务的原子事务,hibernate,spring,jax-ws,java-metro-framework,acid,Hibernate,Spring,Jax Ws,Java Metro Framework,Acid,我们的体系结构包括使用JAX-WS规范开发的Web服务 地铁。这些服务作为单独的war部署在单个Glass Fish应用程序服务器上 所有web服务在内部都使用一个数据库。datatacess层使用Hibernate实现,Spring用于在服务内部实现事务。现在,当我们想做一个跨多个web服务的事务时,有哪些方法是可行的 我们是否需要使用JTA,还是可以避免使用JTA 我们是否需要使用Metro支持的WS-AtomicTransaction规范 我在回答我自己的问题,因为现在还没有答案。不过,我

我们的体系结构包括使用JAX-WS规范开发的Web服务

地铁。这些服务作为单独的war部署在单个Glass Fish应用程序服务器上

所有web服务在内部都使用一个数据库。datatacess层使用Hibernate实现,Spring用于在服务内部实现事务。现在,当我们想做一个跨多个web服务的事务时,有哪些方法是可行的

  • 我们是否需要使用JTA,还是可以避免使用JTA
  • 我们是否需要使用Metro支持的WS-AtomicTransaction规范

  • 我在回答我自己的问题,因为现在还没有答案。不过,我们希望大家能就此发表意见。 我觉得最好的架构是将每个web服务视为单独的,并使用WS-AtomicTransactions/WS-Coodrination跨web服务进行事务处理。 当出于性能或其他原因需要将某些web服务部署到不同的glassfish域或不同的服务器上时,这也会有所帮助。 在内部,这些JAX-WS Metro服务将使用glassfish上的JTA来实现2PC。然而,这隐藏在Metro实现中

    维普尔沙阿