перезаписать defaultTransactionTimeOut bean-компонента MDB, транзакция которого контролируется CMT и развернута в TOMEE - PullRequest
0 голосов
/ 10 декабря 2018

После того, как сообщение обработано и управление возвращается к MDB, я получаю ошибку ниже

    javax.transaction.SystemException: Error during two phase commit
at org.apache.geronimo.transaction.manager.TransactionImpl.commitResources(TransactionImpl.java:702)at org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:327)at org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:252)

Я попытался установить тайм-аут транзакции в TOMEE (tomee.xml)

<TransactionManager id="MyTransactionManager" type="TransactionManager">
    defaultTransactionTimeout = 65 minutes
</TransactionManager>

Также добавление transationManger в качестве ресурса в MDB

@Resource
private TransactionManager tx;

@PostConstruct
public void iniitialize() {
    try {
        tx.setTransactionTimeout(2400);
    } catch (javax.transaction.SystemException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

, оба метода не работают, и поведение также не согласовано.

...