Skip to main content
Previous section   Next section

<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.

Previous section   Next section