4 Replies Latest reply on Dec 1, 2008 9:18 AM by frantisek.kocun

    ExceptionHandler / changes since 3.2GA

    mpet

      Hello,

      I used a global exception handler in my process definition, like the following:

      <?xml version="1.0" encoding="UTF-8"?>
      <process-definition
       xmlns="urn:jbpm.org:jpdl-3.2"
       name="simple">
       <start-state name="start">
       <transition name="to_state" to="first">
       <action name="action" class="com.sample.action.NoHandlerAvailable">
       <message>Going to the first state!</message>
       </action>
       </transition>
       </start-state>
       <state name="first">
       <transition to="end"></transition>
       </state>
       <end-state name="end"></end-state>
       <exception-handler>
       <action class="com.sample.action.TestExceptionHandler">
       </action>
       </exception-handler>
      </process-definition>


      In the above example, the action handler com.sample.action.NoHandlerAvailable is not available (or maybe causes an exception). In case the exception handler class is not available (or causes an exception itself), 3.1.2 and 3.2GA stopped executing the process flow. After upgrading to 3.2.2 or above (have not tried 3.2.1), if the exception handler class is not available or causes an exception, that exception seems to be handled by the same exception handler - causing an (infinite ?) loop.

      Might this be a bug or is the new behaviour intended? Or am I missing something?

      Thanks for any help.
      Marko