休眠,Spring Web Service事务问题
|
我有两个应用程序。一个是OrderService,另一个是TradeService。
在贸易服务中,有一种'Buy \'交易方法。
当Trade Service使用Web Service调用Order服务的SubmitOrder方法时,会出现问题。
问题描述:
“购买”方法中的所有步骤都在一笔交易下。
当我们调用buy方法时,它将创建一个Order对象。
当此方法使用Web服务调用Submit Order方法时,它将传递订单ID。
提交订单方法使用此ID从数据库加载订单对象。
但是在Load方法中,它给出了惰性初始化异常:会话已关闭。
(两个应用程序共享相同的数据库)
对此的可能解决方案是使Submit Order方法具有事务性。
这导致另一个死锁问题。
死锁的原因
A. Buy方法将ID为\'xyz \'的Lock Order对象锁定。并发送相同的ID提交订购方法。
B.现在购买方法正在等待提交订单的答复。
C.提交订单方法无法加载订单对象,因为它已被购买方法锁定。
D.因此,Submit Order方法正在等待获取锁。因此,它是死锁状态。
注意:这两个应用程序都使用Spring MVC,Spring Web Service和Hibernate。
请帮助我摆脱这种情况。预先感谢。(如果需要,我可以发布部分代码)
没有找到相关结果
已邀请:
2 个回复
莽缓逢
俺呵誓放胳