【发布时间】:2016-07-04 11:23:58
【问题描述】:
我有多个网络服务要调用。
假设我调用一个网络服务来将一些数据保存到他们的本地数据库中。从网络服务获得响应后,我会检查以下情况的响应:
1- 让我们以第一次服务成功,第二次也是如此。
2- 让我们考虑第三个 webService 失败,在这种情况下我需要回滚第一个和第二个 web 服务调用!
我该怎么做?
【问题讨论】:
标签: java web-services rest spring-mvc
我有多个网络服务要调用。
假设我调用一个网络服务来将一些数据保存到他们的本地数据库中。从网络服务获得响应后,我会检查以下情况的响应:
1- 让我们以第一次服务成功,第二次也是如此。
2- 让我们考虑第三个 webService 失败,在这种情况下我需要回滚第一个和第二个 web 服务调用!
我该怎么做?
【问题讨论】:
标签: java web-services rest spring-mvc
没有回滚。想象一下以下过程:
现在没有免费房间了,所以你决定不参加活动。您不能“回滚”航班预订。您需要取消航班,甚至可能需要支付费用。
因此,如果您调用了 Web 服务来预订航班,则必须调用 Web 服务来取消航班。
【讨论】:
拉维,
有一种东西叫做Transaction,当它用于Distributed时,它被称为XATransaction。
希望这会有所帮助:basic spring based transaction
With and without XATransaction
您必须记住,您的要求是全局事务,任何地方的异常都会回滚所有事务(插入...等处理)。
【讨论】: