如何使用ActiveMQ资源适配器修改JBoss EAP 6.4消息驱动bean的事务超时值?

如何使用ActiveMQ资源适配器修改JBoss EAP 6.4消息驱动bean的事务超时值?,jboss,transactions,jboss7.x,Jboss,Transactions,Jboss7.x,我的设置: JBoss EAP 6.4.0.GA(AS 7.5.0.Final-redhat-21) ActiveMQ 5.12, ActiveMQ JCA资源适配器5.12, 使用ActiveMQ队列的消息驱动bean 我需要增加服务的事务超时,但我没有找到一种有效的方法来增加从standalone.xml中的默认值继承的事务超时值: <coordinator-environment default-timeout="300"/> 以前有人解决过这个问题吗?我也非常感谢您提供了有

我的设置: JBoss EAP 6.4.0.GA(AS 7.5.0.Final-redhat-21) ActiveMQ 5.12, ActiveMQ JCA资源适配器5.12, 使用ActiveMQ队列的消息驱动bean

我需要增加服务的事务超时,但我没有找到一种有效的方法来增加从standalone.xml中的默认值继承的事务超时值:

<coordinator-environment default-timeout="300"/>

以前有人解决过这个问题吗?我也非常感谢您提供了有用的提示。

经过全面的研究,我非常确定,在这个设置中确实没有明确配置消息驱动Bean事务超时的解决方案

原因是,事务由消息传递系统启动,而负责的ActiveMQ JCA资源适配器不支持此功能

否则(例如,当使用支持它的HornetQ时),有两种配置方法:

  • @MessageDriven注释内部:
    @ActivationConfigProperty(propertyName=“transactionTimeout”,propertyValue=“…”)

  • 部署描述符内部:
    
    事务超时
    ...
    


会话的事务超时(毫秒)。这不是强制值。这里可以看到一个很好的参考:
11:41:47,959 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper) ARJUNA012117: TransactionReaper::check timeout for TX 0:ffffac112a2d:-6105c785:5718932a:af in state  RUN
11:41:47,960 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012095: Abort of action id 0:ffffac112a2d:-6105c785:5718932a:af invoked while multiple threads active within it.
11:41:47,961 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012108: CheckedAction::check - atomic action 0:ffffac112a2d:-6105c785:5718932a:af aborting with 1 threads active!
11:41:47,973 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012121: TransactionReaper::doCancellations worker Thread[Transaction Reaper Worker 0,5,main] successfully canceled TX 0:ffffac112a2d:-6105c785:5718932a:af