Class BpmnExceptionHandler

java.lang.Object
org.camunda.bpm.engine.impl.bpmn.helper.BpmnExceptionHandler

public class BpmnExceptionHandler extends Object
Helper class handling the propagation of BPMN Errors.
  • Constructor Details

    • BpmnExceptionHandler

      public BpmnExceptionHandler()
  • Method Details

    • propagateException

      public static void propagateException(ActivityExecution execution, Exception ex) throws Exception
      Decides how to propagate the exception properly, e.g. as bpmn error or "normal" error.
      Parameters:
      execution - the current execution
      ex - the exception to propagate
      Throws:
      Exception - if no error handler could be found
    • propagateExceptionAsError

      protected static void propagateExceptionAsError(Exception exception, ActivityExecution execution) throws Exception
      Throws:
      Exception
    • isTransactionNotActive

      protected static boolean isTransactionNotActive()
    • isProcessEngineExceptionWithoutCause

      protected static boolean isProcessEngineExceptionWithoutCause(Exception exception)
    • checkIfCauseOfExceptionIsBpmnError

      protected static BpmnError checkIfCauseOfExceptionIsBpmnError(Throwable e)
      Searches recursively through the exception to see if the exception itself or one of its causes is a BpmnError.
      Parameters:
      e - the exception to check
      Returns:
      the BpmnError that was the cause of this exception or null if no BpmnError was found
    • propagateBpmnError

      public static void propagateBpmnError(BpmnError error, ActivityExecution execution) throws Exception
      Throws:
      Exception
    • propagateError

      public static void propagateError(String errorCode, String errorMessage, Exception origException, ActivityExecution execution) throws Exception
      Throws:
      Exception