Thanks for your help. I am copying the implementation of execute method code in
Decision class. This code checks the private decisionDelegation list for
handlers if there is one defined then it calls the handler. If you notice it
doesn't look for decision handlers in action list (If that is expected behavior
then this Decision implementation has broken the contract). So I guess that's
why the decision handlers were not called. I do not know if there is any other
alternative way to initialize the decisionDelegation. Please help me.
public void execute(ExecutionContext executionContext) {
String transitionName = null;
try {
if (decisionDelegation!=null) {
DecisionHandler decisionHandler = (DecisionHandler)
decisionDelegation.instantiate();
transitionName = decisionHandler.decide(executionContext);
} else if (decisionExpression!=null) {
Object result = JbpmExpressionEvaluator.evaluate(decisionExpression,
executionContext);
if (result==null) {
throw new JbpmException("decision expression '"+decisionExpression+"'
returned null");
}
transitionName = result.toString();
} else {
Iterator iter = decisionConditions.iterator();
while (iter.hasNext() && (transitionName==null)) {
DecisionCondition decisionCondition = (DecisionCondition) iter.next();
Object result =
JbpmExpressionEvaluator.evaluate(decisionCondition.getExpression(),
executionContext);
if (Boolean.TRUE.equals(result)) {
transitionName = decisionCondition.getTransitionName();
}
}
if (transitionName==null) {
getDefaultLeavingTransition().getName();
}
}
} catch (Throwable exception) {
raiseException(exception, executionContext);
}
Transition transition = null;
if (transitionName!=null) {
log.debug("selected transition name '"+transitionName+"'");
transition = getLeavingTransition(transitionName);
} else {
log.debug("no transition name selected: taking default leaving
transition");
transition = getDefaultLeavingTransition();
}
if (transition==null) {
throw new JbpmException("decision '"+name+"' selected non existing
transition '"+transitionName+"'" );
}
executionContext.leaveNode(transition);
}
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3956747#3956747
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3956747
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user