Uploaded image for project: 'jBPM'
  1. jBPM
  2. JBPM-3371

Terminate end event in subprocess must not terminate parent process


      According to the spec a terminate node in the subprocess aborts the execution in the subprocess. "Then the process continues on the normal flow" out of the subprocess [Bruce Silver, BPMN Method & Style, p. 82]
      The spec says:
      Sub-process level end events
      For a "terminate" End Event, the Sub-Process is abnormally terminated. In case of a multi-instance Sub-Process, only the affected instance is terminated—no other ongoing Sub-Process instances or higher-level Sub-Process or Process instances are affected.

      The attached unit test shows the incorrect implementation. In the test case the node "AfterSubprocess" should be invoked, but it isn't when the end event is an terminating end event.

        1. JBPM_Terminate.png
          11 kB
        2. jBPM_Terminate.zip
          13 kB
        3. MainProcessHandlingException.bpmn
          6 kB
        4. MainProcessHandlingException.java
          2 kB
        5. SubProcessWithException.bpmn
          4 kB

            swiderski.maciej Maciej Swiderski (Inactive)
            krausest Stefan Krause (Inactive)
            0 Vote for this issue
            3 Start watching this issue