Multiple Activations of the Same Adapter Endpoint

ADAPTER Life-Cycle Management 2-21 For more information, see Section 2.13, Composite Availability and Inbound Adapters .

2.15 Oracle BPEL Process Manager Correlation Support Within Adapters

You can use Native Correlation to correlate an inbound asynchronous message with a previous outbound message, by defining a callback interface for a Reference or by a mid process BPEL Receive: For example, the following composite would define such a correlation: reference name=’Outbound’ interface.wedl interface=http:xmlns.oracle.compcbpeldemowsdl.interface JMSOutbound_PortType callbackinterface=http:xmlns.oracle.compcbpeldemowsdl.interface JMSCallback_PortType binding.jca.operation=Consume config=SampleOutbound_adapter.jca The jca file must contain both JCA interaction and JCA activation. The correlation between the request and the response is done transparently by the JCA binding runtime. For a JMS use case, the third party application must copy the JMS message ID from the request message to the JMS CorrelationID of the response message. For the Oracle AQ Adapter and Oracle JMS Adapter use cases, if an external application copies the MessageId from the request Invoke message to the CorrelationId of the response Receive message, the adapter framework ensures that the BPEL correlation occurs.

2.15.1 CorrelationID of Receive Message Not Matching Invoke: Log Error Message

However, when the CorrelationId of the Receive message does not match any earlier Invoke message, the message is mapped to a BPEL conversation that does not actually exist. In this case, although the message is persisted in the database, you might see the SEVERE log message that Example 2–2 shows: Example 2–2 Log Error When CorrelationId of the Receive Does not Match any Earlier Invoke SEVERE: JCABinding= aqadapter aqadapterAdapter Service aqadapter was unable to perform delivery of inbound message to the composite ... due to: Cannot simply post callback message to the composite as there is no service element associated with the callback. Recommendation: addset the JCA referencebinding property rejectUncorrelatedMessages to true ... SEVERE: JCABinding= aqadapter Unable to createsave Composite Instance Fault due to: null

2.15.1.1 Rejecting Nonmatching Native Correlation IDs

You can explicitly alter the adapter framework behavior so that it rejects nonmatching native correlation IDs by adding the rejectUncorrelatedMessages service binding property to the composite.xml file as shown in Example 2–3 .