Database rows per xml is the maximum number of payloads per BPEL instance. For ex: If it is set as ‘1’ then for every record there will be a BPEL instance. If it is set as ‘5’ then for every 5 record there will be one BPEL instance
Database rows per transaction sets the number of records polled per transaction.
Order by will choose order the records in ascending order.The best practice is to choose <No Ordering>, as message ordering regardless is not guaranteed without extra configuration.
Delay commit This will delay the deletion of all rows until all have been read.
Distributed Polling will be used during the clustered environments. This will avoid the creation of multiple instances of BPEL. Means it will avoid the possibility of picking the same record multiple times in a clustered environment.
Use batch destroy Use this to delete all rows at once after they have been read.
Scenario: Select the records one by one ordered by some field from the source database in a clustered environment
In the Interaction Options, specify the interaction options, as follows:
GetActiveUnitOfWork, setting that forces all invoke activities in the same global transaction to use the same SQL connection if going to the same database. This makes it easier to guarantee that later invoke activities can see the changes of earlier invoke activities, but you may not need to set this at all (if using emulated two-phase commit, it should automatically be the same connection). Another difference is that for
Detect Omissions allows the
Optimize Merge should always be set to true, as it is a general enhancement to
Database rows per transaction sets the number of records polled per transaction.
Order by will choose order the records in ascending order.The best practice is to choose <No Ordering>, as message ordering regardless is not guaranteed without extra configuration.
Delay commit This will delay the deletion of all rows until all have been read.
Distributed Polling will be used during the clustered environments. This will avoid the creation of multiple instances of BPEL. Means it will avoid the possibility of picking the same record multiple times in a clustered environment.
Use batch destroy Use this to delete all rows at once after they have been read.
Scenario: Select the records one by one ordered by some field from the source database in a clustered environment
In the Interaction Options, specify the interaction options, as follows:
GetActiveUnitOfWork, setting that forces all invoke activities in the same global transaction to use the same SQL connection if going to the same database. This makes it easier to guarantee that later invoke activities can see the changes of earlier invoke activities, but you may not need to set this at all (if using emulated two-phase commit, it should automatically be the same connection). Another difference is that for
MERGE and INSERT, all changes are not written until the global transaction commits, so this setting also changes the timing of when WRITE operations occur.Detect Omissions allows the
MERGE and INSERT operations to ignore empty or missing XML elements in the input payload. For a MERGE operation, this will prevent valid but unspecified values from being overwritten with NULL. For INSERT operations, they will be omitted from the INSERT statement, allowing default values to take effect.Optimize Merge should always be set to true, as it is a general enhancement to
MERGE performance (using an in query for the primary key existence check


Add a route-node to the flow with inside a new routing. This routing will call the file business service
To make a return message I add an assign to the response action. Now I add the response template xml to the body variable
The first part is finished, you service should work now. In the second part we will add the XSD validation.








With the reply we can give back the response xml back to the client. Very important report no error because this is a handled exception





















