Exception propagation with sub-processes and peer processes
It is important to understand how exceptions behave when you are using sub-processes and peer processes. In some cases, exceptions that occur in a Called
process are propagated to the Calling
process, and in other cases they are not.
Exception propagation with embedded sub-processes
Embedded sub-processes are executed as part of the process that contains them. This means that any exception that occurs in an embedded sub-process will be propagated to the next scope up if it is not caught and handled in that embedded sub-process, for example by a boundary event. This is perhaps best understood with an example. Consider the process illustrated in the following diagram:
This process contains two embedded sub-processes, one inside the other. It also contains an event sub-process. Let us consider what would happen if an exception occurred in the Something
activity in the inner sub-process.
The inner sub-process has only one boundary event...