官术网_书友最值得收藏!

BPEL correlation

Correlation is a process that matches incoming messages to a particular BPEL process instance. Synchronous BPEL does not require correlation. Correlation is only required for asynchronous BPEL processes.

Oracle BPEL Process Manager automatically establishes correlation using WS-Addressing. However, manual content-based correlation is required if the asynchronous service doesn't support WS-Addressing or the BPEL message is coming from an external system.

Oracle BPEL Processor Manager has the following two methods for correlating asynchronous callback messages to the calling instance.

  • WS-Addressing
  • Correlation sets

One needs to write a manual correlation for the following scenarios:

  • Calling service does not support WS-Addressing.
  • When the asynchronous call has multiple layers. For example, Service A calls B, B calls C, and C Calls D. Response comes from D to A (instead of D to C to B to A). Another option in this scenario is to manipulate the replyTo header without implementing custom correlation.

Creating a Correlation set

A correlation set is a set of properties shared by all messages in the correlated group. These properties must be defined in a WSDL file imported into the BPEL process.

The first step is to create a correlation set. In order to create a correlation set, first click on the Correlation icon (up and down green arrow icon) on the JDeveloper, as shown in the following screenshot. Second, click on the green plus sign on the Correlation Sets window, as shown in the following screenshot that will open the Create Correlation Set window. Third, enter the Name and click on OK. Another option to create a correlation set is to create it from Invoke and Receive activities.

Associating the Correlation set

In JDeveloper, double-click on the Receive activity on BPEL on the Design view as shown in step 1 of the preceding screenshot. It will launch the Edit Receive window, as shown in the following screenshot. Click on the Correlations tab and populate the Correlation Set and Initiate values, as shown in steps 2 and 3 of the following screenshot. Click on OK.

主站蜘蛛池模板: 兰州市| 恩平市| 太和县| 通江县| 嘉兴市| 安化县| 利津县| 唐海县| 区。| 汝城县| 彰化县| 南宁市| 保德县| 海原县| 菏泽市| 通辽市| 浦东新区| 盘锦市| 儋州市| 南平市| 兴文县| 罗城| 改则县| 杨浦区| 珠海市| 平凉市| 辽宁省| 延川县| 伽师县| 安乡县| 九寨沟县| 乐亭县| 沁阳市| 孟连| 西乌| 门头沟区| 龙海市| 云和县| 甘南县| 会昌县| 松溪县|