The design and implementation of fault handling in software applications is as important as the implementation of the normal processing, and often requires an equal amount of care, time, and effort when building robust and reliable applications. Faults can occur in specific situations, so you must be ready to react to them. Faults may already exist within a business process and can compromise the integrity of the system, so you must use process logic to restore the system's integrity. This can be achieved by business logic that is called in case of a failure and that reverses the effects of former service calls. This concept is known as compensation.
This article explains the concepts and usage of compensation in business processes that are run with the Business Process Choreographer, a component of IBM® WebSphere® Process Server Version 6.0.
Generally speaking, compensation is the means of reversing the effects of a service invocation in case of a later failure. For example, consider a process that takes an order request comprising multiple order items from a customer and delegates these requests to different suppliers. If some requests succeed but one fails, the process has to react on that failure to avoid that the customers request is only fulfilled partly. A solution may be to cancel the successful supplier requests and to signal the failure to the customer.
You should have a basic understanding of business processes and the Web Services Business Process Execution Language (WS-BPEL).
|Article in PDF format||0604_robeller-compensation-bpc.pdf ( HTTP | FTP )||673KB|
- WebSphere Integration Developer documentation
- WebSphere Process Server Info Center: Quality of service: Qualifiers
- WebSphere Business Integration Zone provides the technical resources you need for WebSphere Business Integration products.
- Business Process Choreographer samples
- Participate in developerWorks blogs and get involved in the developerWorks community.