Within a BPEL process, any call to a partner link could result in a fault being raised. Other activities within a process can also result in a fault being thrown (for example, due to a selection failure within an
assign activity), and in addition, the process itself may need to signal a fault.
When a fault occurs in a BPEL process, the process must first catch the fault, or else the process will terminate with a state of
Faulted. Once caught, the next step is to decide whether the fault can be handled locally within the process or needs to be returned to the client.
If the interaction between the client and the process is synchronous, it provides a limited opportunity to correct the cause of the fault and retry ...