Hello,
I'm currently using Jbpm 3.1.1 with CMT configured (by setting
'isTransactionEnabled' to false in my jbpm.cfg.xml).
Whenever an exception occurs in the command executer thread, I get the
exception: "setRollbackOnly was invoked while configuration specifies user
managed transactions".
The reason for this is that in the commandExecuterThread any error is catched
by:
| ...
| } catch (Throwable t) {
| // rollback the transaction
| log.debug("command '"+message+"' threw exception. rolling back
transaction", t);
| jbpmContext.setRollbackOnly();
| ...
|
And when the context is closed afterwards (jbpmContext.close()), all services
will be closed. Looking at the DbPersistenceServiceProvider code this results
in:
| public void close() {
| if ( (session!=null)
| && (transaction==null)
| && (isRollbackOnly)
| ) {
| throw new JbpmException("setRollbackOnly was invoked while
configuration specifies user managed transactions");
| }
| ...
|
Since we have no transaction (we configured it this way) and the isRollbackOnly
is true (set by previous code) we get this exception.
So I seems like the command executor thread is not behaving well when working
in a CMT.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3964957#3964957
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3964957
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user