What You May Need to Know About Echoing a Service

Creating Oracle Mediator Routing Rules 19-11 You cannot route an Oracle Mediator response to a two-way service. If you want to route a response to a two-way service, you should use a one-way Oracle Mediator between the first Oracle Mediator and the two-way service. The response should first be forwarded to the one-way Oracle Mediator, which in turn should call the two-way service. To specify a timeout period for asynchronous processing: The following steps are performed in the Routing Rules section of the Mediator Editor.

1. Next to the Target Operation field by the Timeout in field in the Callback

section, click the Browse for target service operation icon. The Target Type dialog appears.

2. Select Service, Event, or Initial Caller.

If you selected Service or Event, the Target Service or the Event Chooser appears depending on your selection. 3. Select an event or service.

4. Click OK

5. In the Timeout in field, enter the number of units for the timeout period, and then

select the unit of time from the dropdown list. The timeout response is forwarded to the specified service or event.

19.2.2.5 How to Handle Multiple Callbacks

A single Oracle Mediator cannot handle multiple callbacks. If you have a composite application with an Oracle Mediator that receives multiple callbacks, the behavior of the composite application is undetermined. For example, in the scenario shown in Figure 19–9 , AsyncMediator forwards the callback response from AsyncEchoMediator1 and AsyncEchoMediator2 to FileInMediator. In such a flow, the AsyncMediator might return the callback from both AsyncEchoMediator1 and Notes: ■ Zero is an unsupported value to be specified as a timeout period. ■ If the callback is received and processing of the callback fails, by default the timeout handler is invoked for processing the action specified in the timeout handler. ■ Typically, the caller receives the callback after waiting for 100 milliseconds. However, if you have a bridge Oracle Mediator with a sequential routing rule and a connection to a synchronous interface service, then due to the complex flow of the program with all sequential routing rules, the caller may take longer to get ready to receive the callback. You can work around this issue by changing the routing rule of the bridge Oracle Mediator to parallel. Note: If the number of routing rules is larger and the time taken to execute the routing rules exceeds the transaction timeout, you must set the transaction timeout to a value that is greater than the time taken to execute all the routing rules. 19-12 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite AsyncEchoMediator2 , or from either one of them. The exact behavior is random and unpredictable. Figure 19–9 Sample Oracle Mediator Handling Multiple Callback

19.2.2.6 How to Handle Faults

If you create a new routing rule in which the target service operation has one or more faults, you still see a single fault routing section in the Mediator Editor. If the source Oracle Mediator service component supports one or more faults, then the fault is routed back to the caller by default. You can choose the source and target fault names to be routed. You can also use the service browser to route the fault to another target. To define an additional fault routing: The following steps are performed in the Routing Rules section of the Mediator Editor.

1. In the Faults section, click the Add another fault routing button shown in

Figure 19–10 .