Add one more Assign activity between Invoke activity and Reply activity. Now,
switch to Mapper view and copy ProcessItineraryOut variable to WSDL_NorthAir-
ReservationOperationOut as shown in the following screenshot:
Chapter 10
[ 221 ]
Our business process doesn't do much. It sends the guest itinerary to the NorthAir
Web Service and returns the confirmation message back to the caller.
Assume, if NorthAir Web Service has the option of providing an operation, to check
if there is seat availability on a particular date. Our business process should check
the availability before deciding on the next action. The following diagram shows
an if activity added to the process. The isAvailable() method of NorthAir Web
Service returns a Boolean, based on the seat availability.
When the seat is not available, BPEL process requests the NorthAir Web Service to
process the guest itinerary through another service called SouthAir and returns the
confirmation back to the caller. This is transparent to the caller.
Ideally, NorthAir should not invoke SouthAir's service. In fact, NorthAir need not
know about other air alliance partners. So, create another partner service called
AirAlliance that can invoke processItinerary operations of other airlines.
Building a Sample Application
[ 222 ]
Now, consider the following implementation.
Pages:
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197