This blog discuss about the usage of SDO (Service Data Objects) Inbound Integrations with the ADF-BC Application. Refer the blog BPEL Data Operations using Entity Variables in SOA 12c to understand how to perform the BPEL data operations using the data provider services through the usage of entity variables.
Till Release 10.X, only DOM format variables were supported. From Release 11g onwards, SDO format variables were introduced and supported in the BPEL Process Services and components can be converted into required formats as per the Business Process need (Example – Usage of ASSIGN Activity to convert the DOM based BPEL Process Service Component to SDO based format and vice –versa
Unlike DOM and SDO based variables, Entity variables supports SDO based data and enables a unique key which binds the value to data. A common Example could be Create Supplier Operation or Create Purchase Order using BPEL Process Service. This unique key gets stored in the dehydration store. When the data is to be retrieved, Oracle BPEL Process Manager performs the below steps:
1) It uses the Bind Entity Activity to map the unique key
2) Executes the data provider service to retrieve the data places into memory
The above given diagram depicts the SDO Inbound Integration where the ADF-BC Application Invokes the BPEL Process Service. The BPEL Process Service Component is converted from SDO based variables to DOM based Variables and executes the services as per the received operation.
SOA 12c provides the capability to perform the BPEL data operations using the data provider services through the usage of entity variables. The data provider services perform the data operations behind the scenes and thus eliminates the usage of Database Adapter in the BPEL Process Service, enhancing the SOA runtime performance.
The common example of using entity variables with the Oracle Application Development Framework (ADF) which provides Business Component provider service using SDO based data to connect to the Data Store.
SDO is the specification provided to streamline the execution of SOA data from heterogeneous systems in the form of XML document, relational databases and web service being the source of information.
Entity variables using data provider service overcomes the below given issues:
1) Earlier the unsupported XML data source (Native Data) was required to be converted into XML Format before it can be processed using the SOA components.
2) The large payloads during the data conversion also leads to performance issue
3) In the previous release of SOA, the DOM form data was retrieved using the Database Adapter and was getting stored in the dehydrated data store. The stored data was not in sync with the target data store and thus might provide the stale data details.
The current SOA 12c Release overcomes this issue by providing the entity variables which retrieves the data using the data provider services (ADF –BC). Instead of storing the data in the dehydrated store, key is persisted (done using the BindEntity Activity in the BPEL Process).
Every time, this key will be referred to retrieve the data from the target data store using the data provider services, eliminating redundant data / stale data issue.
11g and 12c Release (Entity Variables)
Usage of Database Adapters for retrieving / saving the data
Retrieving / saving of data is performed using data provider services ( ADF-BC)
Storage of data in the dehydrated store using the Oracle BPEL Process Manager
Key is persisted for the transaction
Data variables are in the DOM( Document Object Model) Form
Data variables are in the SDO ( Service Data Objects) Form