Introduction to One Request, a Mandatory Response, and an Optional Response

5-10 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite and so on. This pattern can also include multiple shot callbacks, followed by longer-term processing. Figure 5–9 provides an overview. Figure 5–9 Partial Processing BPEL Process Service Component as the Client In this case, the BPEL client is simple; it needs an invoke activity for each request and a receive activity for each reply for asynchronous transactions, or just an invoke activity for each synchronous transaction. Once those transactions are complete, the remaining work is handled by the service. As with all partner activities, the WSDL file defines the interaction. BPEL Process Service Component as the Service The BPEL service needs a receive activity for each request from the client, and an invoke activity for each response. Once the responses are finished, the BPEL process service component as the service can continue with its processing, using the information gathered in the interaction to perform the necessary tasks without any further input from the client.

5.10 Introduction to Multiple Application Interactions

In some cases, there are more than two applications involved in a transaction, for example, a buyer, seller, and shipper. In this case, the buyer sends a request to the seller, the seller sends a request to the shipper, and the shipper sends a notification to the buyer. This A-to-B-to-C-to-A transaction pattern can handle many transactions at the same time. Therefore, a mechanism is required for keeping track of which message goes where. Figure 5–10 provides an overview. As with all partner activities, the WSDL file defines the interaction. receive receive receive receive Client BPEL Process WSDL PartnerLink d2 d4 Service BPEL Process receive receive d1 Call service invoke receive d3 invoke receive receive invoke receive Introduction to Interaction Patterns in a BPEL Process 5-11 Figure 5–10 Multiple Party Interactions This kind of coordination can be managed using WS-Addressing or correlation sets. For more information about both, see Chapter 8, Invoking an Asynchronous Web Service from a BPEL Process. BPEL Process A Buyer WSDL PartnerLink WSDL PartnerLink WSDL PartnerLink BPEL Process B Seller receive C d1 invoke B invoke C receive A BPEL Process C Shipper invoke A receive BC d3 d2