【发布时间】:2018-11-29 05:29:11
【问题描述】:
我需要调试 Java EE Web 服务事务。我想在我的应用程序日志中打印事务的状态、分界边界和承诺。我想确保事务没有任何与 2PC 相关的内容,并确保它在本地启动和刷新。如何访问 SEI 和 EJB 类中的当前事务以输出有关当前事务的信息?是否也可以为事务注册回调以记录其承诺?我使用 WebLogic 12c 作为应用程序服务器和 Java EE API,辅以一些 WebLogic 特定的 API 来实现带有 JMS 传输的异步 Web 服务。
【问题讨论】:
-
您可以使用以下标志在服务器实例上启用 JTA 调试标志: -Dweblogic.debug.DebugJTAPropagate=true -Dweblogic.debug.DebugJTAGateway=true -Dweblogic.debug.DebugJTAXA=true -Dweblogic.debug .DebugJTA2PC=true -Dweblogic.debug.DebugJTAJDBC=true
-
您能否解释一下“2PC”一词的用法?您想防止共享事务上下文 BETWEEN 多个 Web 服务吗?还是多个资源WITHIN参与到同一个事务上下文中?
-
@Illya Kysil。我想防止跨服务传播事务上下文(我正在使用 EJB 中的 JMS 传输调用单向 Web 服务)
-
有机会获得对以下答案的反馈吗? stackoverflow.com/a/53535107/1091731
标签: jakarta-ee transactions ejb weblogic jta