Java SOAP / REST webservices:客户端超时但服务器不回滚

时间:2017-06-27 12:10:56

标签: java hibernate web-services

我有一个java客户端应用程序和一个java服务器应用程序。 我的客户可能会减慢网络速度。

我的客户端对我的服务器应用程序执行SOAP Web服务。问题是有时客户端达到超时(40秒),因为网络真的非常糟糕。

对于客户端应用程序,此请求失败,稍后重试相同的调用。但是服务器已经集成了来自客户端的数据,我的ORM中出现了错误的密钥错误。

我不想延长客户端的超时时间。

我的问题是:当客户端超时时,有没有办法回滚服务器端的所有内容?

由于

1 个答案:

答案 0 :(得分:0)

解决它的一个选项是在服务器接受请求时在数据库中设置一些标志/状态。像inProcessing这样的东西。在成功处理数据后,将此标志更改为Complete

当客户稍后重试相同的通话时,您可以检查此标记,如果flag=inProcessing or Complete没有进行任何日期处理。