Fault activities cause the normal process execution flow to jump to a specialized handler, similar to exceptions in modern programming languages. There are five different types of fault activities, described in this section.
Exit
The Exit activity causes the process to immediately terminate.
Throw
The Throw activity propagates a specified fault to its ancestor Scope, or the process itself.
Rethrow
A Rethrow activity can only be used inside a fault handler. It is used to propagate the fault that was caught by the handler, using the original fault data.
Compensate
The Compensate activity is used to invoke a compensation handler. This activity can only be used within a fault handler, compensation handler or termination handler.
CompensateScope
The CompensateScope activity is used to invoke a compensation handler in the enclosing Scope. This activity can only be used within a fault handler, compensation handler or termination handler.