in src/main/java/org/apache/commons/scxml2/semantics/SCXMLSemanticsImpl.java [350:377]
public void executeContent(final SCXMLExecutionContext exctx, final Executable exec) throws ModelException {
try {
for (final Action action : exec.getActions()) {
action.execute(exctx.getActionExecutionContext());
}
} catch (final SCXMLExpressionException e) {
exctx.getInternalIOProcessor().addEvent(new EventBuilder(TriggerEvent.ERROR_EXECUTION, TriggerEvent.ERROR_EVENT).build());
exctx.getErrorReporter().onError(ErrorConstants.EXPRESSION_ERROR, e.getMessage(), exec);
} catch (final ActionExecutionError e) {
if (!e.isEventRaised()) {
exctx.getInternalIOProcessor().addEvent(new EventBuilder(TriggerEvent.ERROR_EXECUTION, TriggerEvent.ERROR_EVENT).build());
}
if (e.getMessage() != null) {
exctx.getErrorReporter().onError(ErrorConstants.EXECUTION_ERROR, e.getMessage(), exec);
}
}
if (exec instanceof Transition) {
final Transition t = (Transition)exec;
if (t.getTargets().isEmpty()) {
notifyOnTransition(exctx, t, t.getParent());
}
else {
for (final TransitionTarget tt : t.getTargets()) {
notifyOnTransition(exctx, t, tt);
}
}
}
}