Understanding a Request-Reply Message Exchange Pattern

Understanding Message Exchange Patterns of an Oracle Mediator 23-7 Figure 23–4 illustrates the request-callback message exchange pattern. Figure 23–4 Request-Callback Message Exchange Pattern Request Response The response is sent back to the caller, as a callback, in a separate thread. Request Response Fault The response is sent back to the caller, as a callback, in a separate thread. The fault is forwarded to another target or event. Request Callback The callback is sent back to the caller. Request Response Callback The callback is sent back to the caller, and the response is forwarded to another target or event. Request Response Fault Callback The callback is sent back to the caller. The response and fault are forwarded to another target or event. Table 23–5 Cont. Response When Oracle Mediator’s WSDL Is a Request Callback WSDL of the Routing Rule Target Response Client One-Way Target Reference or Component Request-Response- Fault Target Reference or Component Request-Response Target Reference or Component Asynchronous Request-Callback Target reference or Component Invoke No Callback Invoke Response to Client as Callback Invoke Callback to Client Invoke Response to Client as Callback Fault Fwd Request- Callback Mediator 23-8 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite

23.5 Understanding a Request-Reply-Callback Message Exchange Pattern

In a request-reply-callback interaction, the Oracle Mediator is invoked and sends a response and an asynchronous reply to the initial caller. Depending on the type of routing rule target, the responses, faults, and callbacks are handled as shown in Table 23–6 : Figure 23–5 illustrates the request-reply-callback message exchange pattern. Table 23–6 Response When Oracle Mediator’s WSDL Is a Request Response Callback Routing Rule Target Type Response Request There should be at least one sequential routing rule that returns a response. No callback is sent to the caller if there is no routing rule with a defined callback. Request Response There should be at least one sequential routing rule that returns a response. No callback is sent if there is no routing rule with a defined callback. Request Response Fault There should be at least one sequential routing rule that returns a response. No callback is sent to the caller if there is no routing rule with a defined callback. Request Callback There should be at least one sequential routing rule that returns a response. Oracle Mediator returns null when there is no response to be sent. Request Response Callback The response and callback are sent back to the caller. Request Response Fault Callback The response and callback are sent back to the caller. The fault is forwarded to another target or event.