Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.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
Java 使用web服务时的类事务逻辑_Java_Soap_Transactions - Fatal编程技术网

Java 使用web服务时的类事务逻辑

Java 使用web服务时的类事务逻辑,java,soap,transactions,Java,Soap,Transactions,有几个更新语句可以通过web服务调用完成。这些语句应该是事务性的;只有在一切都能做到的情况下,才能做到这些 我无法更改web服务。我所能做的就是尝试改变所有这些,如果其中一个失败了,我会改变以前的。这种朴素的涂鸦很难看 有没有更优雅的方法来解决这个问题 注意:我使用的是JavaEE、SOAP、SpringMVC 您可以编写一个事务类,它使用apachehttputils逐个调用这些web服务。(这个类应该有一个@Transactional注释)对于不同的目标(方法和类),我们有一个@Transa

有几个更新语句可以通过web服务调用完成。这些语句应该是事务性的;只有在一切都能做到的情况下,才能做到这些

我无法更改web服务。我所能做的就是尝试改变所有这些,如果其中一个失败了,我会改变以前的。这种朴素的涂鸦很难看

有没有更优雅的方法来解决这个问题


注意:我使用的是JavaEE、SOAP、SpringMVC

您可以编写一个事务类,它使用apachehttputils逐个调用这些web服务。(这个类应该有一个@Transactional注释)

对于不同的目标(方法和类),我们有一个@TransactionaAttribute
如果您将此注释应用于具有适当的TransactionaAttribute Type(常量)的类,则该事务策略将应用于该类中的所有方法,即您可以在该类中保留对update语句的所有调用,并将该类插入您拥有web服务的位置,因此,即使一个更新呼叫失败,它也会回滚

如果以上有帮助,请毫不犹豫地将问题标记为已回答:)