]
Alejandro Guizar resolved JBPM-1162.
------------------------------------
Resolution: Done
Problem with exception handling within the Decision nodes
---------------------------------------------------------
Key: JBPM-1162
URL:
https://jira.jboss.org/jira/browse/JBPM-1162
Project: jBPM
Issue Type: Bug
Components: Runtime Engine
Affects Versions: jBPM 3.2.2
Environment: Vaio laptop running Windows Vista, Java 1.5, JBPM 3.2.2
Reporter: Jon Folland
Assignee: Alejandro Guizar
Fix For: jBPM 3.2.10
Original Estimate: 0 minutes
Remaining Estimate: 0 minutes
I believe there may be a bug in the Decision class where exception handling is concerned
which causes this failure:
If the line: String transitionName = decisionHandler.decide(executionContext); ...
...in the method public void execute(ExecutionContext executionContext)
throws an exception, which is caught here in the same method:
raiseException(exception, executionContext);
We miss the block:
if (transition==null) {
transition = getDefaultLeavingTransition();
log.debug("decision didn't select transition, taking default
"+transition);
}
So when executionContext.leaveNode(transition); is called at the bottom, there wil be no
transition set.
I believe we need to check for a tranistion==null condition regardless of whether an
excpetion has been handled. Otherwise you will never be able to handle an exception in a
Decision without another unhandled exception being thrown (which kind of defeits the point
:-)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: