【问题标题】:running XA/JTA transactions from z/OS batch jobs从 z/OS 批处理作业运行 XA/JTA 事务
【发布时间】:2015-01-13 17:35:53
【问题描述】:

使用JZOS启动器批量执行java程序。

用于 JDBC 的 DB2 驱动程序支持 XA 事务,但似乎只有当进程在“事务管理器”的控制下运行时才能使用它们(运行 WebSphere/CICS 进程时会发生什么)

有没有办法批量使用这种交易?

目标是在单个提交/回滚中混合 DB2/Oracle 插入/更新

【问题讨论】:

    标签: jdbc db2 jta zos xa


    【解决方案1】:

    ibm 站点提供了an example(参见图 3 - 使用 JTA 的分布式事务示例),其中包含事务管理逻辑

    这似乎只有在使用类型 4(远程)连接到 DB2 时才有可能

    【讨论】:

      【解决方案2】:

      SimpleJTA 是一个可以直接用于解决问题或作为有目的封装的参考的项目:

      SimpleJTA 实现了一个独立的符合 JTA 的事务 经理。它主要设计为在没有 J2EE 服务器时使用 例如,在 Servlet 应用程序或独立 Java 中可用 程序。

      但它应该适应/配置为使用 DB2

      SimpleJTA 正在使用 Oracle 9i 和 Apache 进行开发和测试 Derby 数据库管理系统。添加支持相当容易 对于其他支持 XA 接口的数据库系统。

      【讨论】:

        【解决方案3】:

        一个更复杂的问题是使用到 DB2 的类型 2(本机/DLL)连接来完成这项工作,因为它不支持分布式事务。如果您想在分布式事务中集成来自 JNI 调用的 COBOL 程序的更新,这可能是必要的

        也许可以构建类似于 WebSphere 的last participant support extension 的解决方案:

        最后参与者支持是对事务服务的扩展 允许单个单阶段资源参与两阶段 与一个或多个两阶段资源的交易。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-12-31
          • 1970-01-01
          • 1970-01-01
          • 2023-01-25
          • 2021-01-15
          • 2015-07-30
          • 2023-03-18
          相关资源
          最近更新 更多