<compensate>
Invoke a <compensationhandler> from <catch> or <catchall>.
Syntax
<scope> <throw fault='"BuyersRegret"'/> <faulthandlers> <catch fault='"BuyersRegret"'> <compensate target="RestoreBalance"/> </catch> </faulthandlers> <compensationhandlers> <compensationhandler name="RestoreBalance"> <assign property='context.MyBalance' value='context.MyBalance+1'/> </compensationhandler> </compensationhandlers> </scope>
Copy code to clipboard
Details
Attribute or Element | Description | Value |
---|---|---|
target attribute | Required. The name of a <compensationhandler> that provides a sequence of activities to undo previous actions. | A string of 0 to 255 characters. |
<annotation> element | See “Common Attributes and Elements.” |
Description
The <compensate> element invokes a <compensationhandler> block by specifying its name as a target:
<compensate target="general"/>
Copy code to clipboard
<compensate> may only appear within <catch> or <catchall>. Its target value must match the name of a <compensationhandler> within the same BPL business process.
For details, see “BPL Error Handling Conventions” in Developing BPL Processes.