Java EE:在两个Web服务调用中执行一个数据库事务

时间:2014-07-25 08:47:17

标签: web-services java-ee transactions weblogic

我正在开发一个托管在 weblogic (10.3.4.0)并连接到 Oracle 数据库的Java EE应用程序。我使用UserTransaction来执行数据库操作。操作由来自C ++客户端的 webservices 调用触发。我有两个webservices ,我希望将其作为原子操作执行,即如果在第二次webservice调用期间发生任何异常事件,则回滚到初始状态。注意:我无法将两个Web服务合并为一个。

我首先尝试使用基于容器的事务,但它似乎不合适,因为我无法控制提交何时发生(我不希望它发生在两个webservices之间) )。 我目前正在尝试使用有状态bean,但还没有找到解决方案。 Currenlty所有的webservices都是无状态的。 有人会对我的问题提出一些建议吗,或者有任何提示表明这是不可能的?

由于

1 个答案:

答案 0 :(得分:1)

您可能需要ws-transaction / ws-coordination模块或服务补偿。