JTA环境下使用JBPM4.x的问题

来源:互联网 发布:网络兼职赚钱 日结 编辑:程序博客网 时间:2024/06/07 09:22

JTA环境下,如果你整合了JBPM4.X,当jbpm的dbid在增长到当前上限时,会报一个类似cannot acquire block of ids的错误。这个问题曾经困扰了我们很久,这个问题经过仔细分析源码最后发现其实是JBPM默认事务策略配置的问题,具体的分析过程这里就不贴上了,最终解决办法是:

修改jbpm.tx.jta.cfg.xml中的代码段:

 其中注释掉的部分就是默认配置,红色的部分是修改后的.

    <command-service name="newTxRequiredCommandService">
      <!--
      <environment-interceptor policy="requiresNew" />
       -->
      <environment-interceptor/>
      <retry-interceptor type="jta" />
<!--
      <jta-transaction-interceptor policy="requiresNew" />
 -->
      <jta-transaction-interceptor/>
    </command-service>