User development,
A new message was posted in the thread "How to handle rollback due to runtime
errors":
http://community.jboss.org/message/527792#527792
Author : Maciej Swiderski
Profile :
http://community.jboss.org/people/swiderski.maciej
Message:
--------------------------------------------------------------
Hi all,
in one of recent posts I have been interesting discussion going on about exception
handling in jBPM. As it was described there user code exception should be handled within
that code but what about case where user code was executed fine but something else went
wrong?
Please consider following scenario:
- there are 4 nodes (regardless of type) that are executed as one transaction.
- some of the nodes modify external systems via different protocols
- no exceptions are thrown from nodes
- runtime exception is thrown due to some db issues
Transactionwill be rolled back but changes made to external system are not rolledback
since they were not part of the transaction (for example webservice call).
Have you put any thoughts into that? I was wondering if some sort of compensation
mechanism could be introduced to the execution where nodes that take part in transaction
can inform runtime engine what to invoke in case of roll backs. This could give kind of
undo operation for already finished nodes and should not cause any problems when process
will go thru them again.
What's your opinion about it? Does it sound reasonable?
Cheers,
Maciej
--------------------------------------------------------------
To reply to this message visit the message page:
http://community.jboss.org/message/527792#527792