我在我的应用程序中为其中一个数据源获得了两阶段提交扩展。要点是应用程序仅使用 Oracle Toplink 提供仅准备数据选项。这是应用程序中发生的事情
- 请求来到网络服务
- 对 JMS 队列的 Web 服务调用。应用程序需要来自队列的响应,因此将队列与读取响应一起使用
- 在 Message Bean(让我们称之为 ProcessBean)中,使用 Oracle Toplink 成功命中了 Oracle DB,[b] 没有异常[/b]。
- 在 DB 数据读取指针转到调用 Blaze 提供的 Blaze 规则 RMI API 之后。我们得到成功的结果。
- 队列调用响应队列并发送回响应消息。
- 现在异常来了,指针再次来到ProcessingBean
- 在 web 服务中永远不会得到响应。
PS 如果您希望在 Weblogic 连接池中进行全局事务,那么一切正常。或者,如果我选中启用两阶段提交,那么一切正常。