getExecutionErrorHandler().processing(this); internalTrigger(from, type);
protected RequestContext internalExecute(Executable executable, RequestContext ctx) { try { executeNext(executable, ctx); return ctx; } catch (Throwable ex) { // in case there is another interceptor of this type in the stack don't handle it here if (hasInterceptorInStack() || executionErrorManager == null) { throw ex; } executionErrorManager.getHandler().handle(ex); throw ex; } }
protected void triggerCompleted(String type, boolean remove) { getExecutionErrorHandler().processed(this); Node node = getNode(); if (node != null) {
targetEntity = persistenceContext.findOrgEntity(targetEntityId); getExecutionErrorHandler().processing(task); switch (operation) { case Activate: { getExecutionErrorHandler().processed(task); } catch (RuntimeException re) { throw re;
@Override public Boolean execute(Context context) { KieSession ksession = ((RegistryContext) context).lookup( KieSession.class ); WorkflowProcessInstance processInstance = (WorkflowProcessInstance) ksession.getProcessInstance(processInstanceId); NodeInstance nodeInstance = getNodeInstance(workItem, processInstance); Throwable actualException = exception; if (actualException instanceof AsyncJobException) { actualException = exception.getCause(); } String exceptionName = actualException.getClass().getName(); ExceptionScopeInstance exceptionScopeInstance = (ExceptionScopeInstance) ((org.jbpm.workflow.instance.NodeInstance)nodeInstance).resolveContextInstance(ExceptionScope.EXCEPTION_SCOPE, exceptionName); if (exceptionScopeInstance != null) { logger.debug("Handling job error '{}' via process error handling", actualException.getMessage()); exceptionScopeInstance.handleException(exceptionName, actualException); return true; } else { logger.debug("No process level error handling for '{}' letting it to be handled by execution errors", exception.getMessage()); errorHandler.processing(nodeInstance); return false; } }
protected RequestContext internalExecute(Executable executable, RequestContext ctx) { try { executeNext(executable, ctx); return ctx; } catch (Throwable ex) { // in case there is another interceptor of this type in the stack don't handle it here if (hasInterceptorInStack() || executionErrorManager == null) { throw ex; } executionErrorManager.getHandler().handle(ex); throw ex; } }
protected void triggerCompleted(String type, boolean remove) { getExecutionErrorHandler().processed(this); Node node = getNode(); if (node != null) {
getExecutionErrorHandler().processing(this); internalTrigger(from, type);
if (!isErrorHandled) { logger.debug("Error '{}' was not handled on process level, handling it via execution errors mechanism", exception.getMessage()); errorHandler.handle(exception);