Sorry could not get back to you earlier. I have done a quick write up
correlation disagreement issue.
Disagreement between SCA and BPEL
SCA defines conversational
interfaces at binding level
and not at an application level. This approach can result in ambiguous
as the two correlation mechanisms are mutually exclusive. To illustrate
let use consider a long running Loan Approval SCA composite application
implemented using BPEL component
client make two asynchronous
web services (submit request and check response) calls using SOAP over
two web service calls take part in SCA container based conversation.
container correlates based on a correlation id that it generates as a
the submit request web service call.
. The interface used by the
Loan Approval process is
name =”LoanService” sca:requires=”conversational”>
<operation name = “submitRequest”>
<input message = “tns:submitRequestRequest”/>
<output message = “tns: submitRequestResponse”/>
<operation name = “checkResponse”
message = “tns:checkResponseRequest”/>
message = “tns:checkResponseResponse”/>
This works fine if the
correlation is not
defined at the BPEL process level.
Now, if the BPEL process
correlates as well based on LoanRequest correlation set that uses
and orderDate properties; there is a possibility for ambiguous behavior
SCA container could correlate correctly while the BPEL container fails
correlate correctly and sends a correlation violation exception back to
<correlationSet name=”LoanRequest” properties=”orderNumber orderdate”/>
<Receive name="Submit Request Receive"
<correlation set="LoanRequest" initiate="yes" pattern="in"/>
<Reply name="Submit Request Reply"
<Receive name="Check Response Receive "
<Reply name=" Check Response Reply"
Could you elaborate your concern with a more concrete example?
elaborate what you mean by "BPEL correlation fails"?
Najeeb Andrabi wrote:
TARGET: SCA C+I
mechanism primarily deals with correlations at the transport/messaging
not at an application/component level. Currently, there is no mechanism
handle a case where SCA runtime correlates correctly but BPEL