I've got this example of BPEL from this location https://svn.wso2.org/repos/wso2/carbon/platform/trunk/products/bps/modules/samples/product/src/main/resources/bpel/2.0/SampleCompensationHandlers/FlightReservationProcess/
The example sets a given variable when executes a given scope. The last scope throws an error, so the fault triggers the relevant handler for that scope, which rethrows the fault. That way the fault handler for the process is triggered, where the compensation is made for every successfully completed scope.
I've created a BPEL project in Eclipse and I've put the example in there, then I've started some tests. But I've found a very strange behavior:
I've got correct results just few times: CarReservationActivity: 1 CarReservationCompensated: 1 HotelReservationActivity: 1 HotelReservationCompensated: 1 FlightReservatoinActivity: 1
In all other cases I've got incorrect results:
A)
CarReservationActivity: 1 CarReservationCompensated: 0 HotelReservationActivity: 1 HotelReservationCompensated: 1 FlightReservatoinActivity: 1
B)
CarReservationActivity: 1 CarReservationCompensated: 1 HotelReservationActivity: 1 HotelReservationCompensated: 0 FlightReservatoinActivity: 1
And when the result is incorrect then the case A) dominates.
I can not find out where is the problem. Everything looks fine.
Can someone help me to solve the issue ?
Used software : - Windows 7 Enterprise, SP1, 32bit - Apache Tomcat v.6.0.18 - Apache ODE v.1.3.5 - Eclipse Indigo v.3.7.2 SR2 - BPEL designer v.1.0.1 - Java 7 (v.1.7.0_07)