Example of BPEL process using CorrelationSets

Posted by kvddool on 27-Dec-2009 13:45

I am searching for an example BPEL project using CorrelationSets.

Can someone provide me an example, in order to help me more quickly gaining understanding of how to configure it correctly?

Thanks
Koen van den Dool

All Replies

Posted by Bill Wood on 29-Dec-2009 11:02

I haven't done this, but I do know that the sample provided with SonicBPEL does describe correlation sets.

Go to \BPELServer7.6\samples\Sample.BPEL

The readme.txt describes the sample...

 3) pubSubApproval.bpel - This process implements the external approval service used by loanApproval.  pubSubApproval is designed to send a credit message to a topic and wait for messages from one or more external banks.   Each bank can respond with an acceptance and an interest rate based on the bank's risk tolerance.  If the interest rate is lower than the current minimum and the user was accepted the process records this information and waits for the next message.  If a message has not been received within 5 seconds the process will reposnd with the current minimum interest rate.  Initially the process is configured to send to a single bank implemented in the ESB process firstBank.  Later in the sample we will convert the process to call out to multiple banks over a publish/subscribe destination.  This process demonstrates the use of correlation to implement asynchronous interaction with itineraries.  Furthermore the sample demonstrates a useful pattern for interaction with publish subscribe endpoints where multiple response inspection and selection is required.  This pattern can be extended to perform aggregation, enforce a maximum wait time, wait for a particular number of messages, etc.

You can also look in the Eclipse Help for Sonic Workbench at

Sample BPEL process: pubSubApproval


(This is available in Workbench help, but also online at http://communities.progress.com/infocenter/index.jsp?topic=/com.sonicsw.doc/bpel/getting_started/pub_sub_approval_process.htm)

This thread is closed