- Developing SOA Applications with Oracle SOA Suite
- Using the BPEL Process Service Component
- Using Correlation Sets and Message Aggregation
- Routing Messages to the Same Instance
- How to Configure BPEL Process Instance Creation
How to Configure BPEL Process Instance Creation
You can control the number of instances to create and use to route messages with the reenableAggregationOnComplete property.
To configure BPEL process instance creation:
- In the SOA Composite Editor, select the BPEL process service component, as shown in Figure 9-16.
Figure 9-16 Selected BPEL Process Service Component

Description of "Figure 9-16 Selected BPEL Process Service Component" - Go to the Property Inspector in the lower right corner of Oracle JDeveloper. If the Property Inspector is not displayed, select Property Inspector from the View main menu.
- In the Properties section, click the Add icon, as shown in Figure 9-17.
The Create Property dialog is displayed.
- In the Name field, enter the
bpel.config.reenableAggregationOnCompletedeployment descriptor property. The prefix ofbpel.configis required for this type of deployment descriptor. - In the Value field, enter
true, as described in Table 9-12.Table 9-12 reenableAggregationOnComplete Property Settings
Value Description Example trueCreates a new instance to handle messages. However, there is a window between messages coming in and instance completion. This can result in messages remaining in the
DLV_MESSAGEtable. This setting can result in the occurrence of race conditions. For more information, see Table 9-13.You invoke messages 1 through 4 for a client using the
initiateoperation. This results in the following actions:-
Two instances of the BPEL process are created and completed.
-
Messages 1 and 2 are routed to the first instance and messages 3 and 4 are routed to the second instance.
falseThis is the default behavior. This setting causes the aggregation feature to be disabled. Only one instance is created. Messages that are not handled by the instance remain in the
DLV_MESSAGEtable. This setting is recommended for most environments.You invoke messages 1 through 4 for a client using the
initiateoperation. One instance of the BPEL process is created and completed.Do not attempt to route multiple messages using the same correlation set to one BPEL instance.
Figure 9-18 shows the completed Create Property dialog.
-
- Click OK.
The
reenableAggregationOnCompleteproperty with thebpel.configprefix looks as follows in thecomposite.xmlfile.<composite name="Aggregation" revision="1.0" label="2011-07-10_13-52-24_174" mode="active" state="on"> . . . . . . <component name="Aggregation" version="1.1"> <implementation.bpel src="Aggregation.bpel"/> <property name="bpel.config.reenableAggregationOnComplete" type="xs:string" many="false" override="may">true</property> </component> . . . . . . </composite>

