Custom Search SOABYTE here

Friday, September 10, 2010

Deployment Descriptor Properties in Oracle 11G

Deployment descriptors are BPEL process service component properties used at runtime by Oracle WebLogic Server, Oracle Enterprise Manager, or both. There are two types of properties:

·         Configuration
·         Partner link binding
You define configuration properties and values in the BPEL process service component section of the composite.xml file as in example below:- 

<composite name=”mybpelproc”>
<property name=”bpel.config.completionPersistPolicy”>on</property>

Property Name
This property configures how the instance data is saved. It can only be set at the BPEL service component level. The following values are available:
  • on (default): The completed instance is saved normally.
  • deferred: The completed instance is saved, but with a different thread and in another transaction.
  • faulted: Only the faulted instances are saved.
  • off: No instances of this process are saved.

<composite name=”mybpelproc”>
<property name=”bpel.config.completionPersistPolicy”>on</property>

If using outbound adapters in an asynchronous BPEL process, specify the maximum number of retries for a remote fault.
If using outbound adapters in an asynchronous BPEL process, specify the time interval in milliseconds between retries for a remote fault.
Default value is false. This property can only be set to true if it does not have dehydration points. Activities like wait, receive, onMessage, and onAlarm create dehydration points in the process. If this property is set to true, in-memory optimization is attempted on the instances of this process on to-spec queries.
Specify whether the server can keep global variable values in the instance store when the instance completes:
  • false (default): Global variable values are deleted when the instance completes.
  • true: Global variable values are not deleted.
This property sets the persistence policy of the process in the delivery layer. The possible values are:
  • async.persist: Messages into the system are saved in the delivery store before being picked up by the engine.
  • async.cache: Messages into the system are saved in memory before being picked up by the engine.
  • sync: The instance-initiating message is not temporarily saved in the delivery layer. The engine uses the save thread to initiate the message.
The location of the sensor action XML file. The sensor action XML file configures the action rule for the events.
The location of the sensor XML file. The sensor XML file defines the list of sensors into which events are logged.
This property configures the transaction behavior of the BPEL instance for initiating calls.
  • requiresNew: A new transaction is created for the execution, and the existing transaction (if there is one) is suspended. This behavior is true for both request/response (initiating) environments and one-way, initiating environments in whichbpel.config.oneWayDeliveryPolicy is set to sync.
  • required: In request/response (initiating) environments, this setting joins a caller's transaction (if there is one) or creates a new transaction if there is no transaction.
  • In one-way, initiating environments in which bpel.config.oneWayDeliveryPolicy is set to sync, the invoke message is processed using the same thread in the same transaction.
Note: This property does not apply for midprocesses receive activities. In those cases, another thread in another transaction is used to process the message. This is because correlation is needed and it is always done asynchronously.


Properties for the partnerLinkBinding Deployment Descriptors
<composite name=”mybpelproc”>
<property name=””>true</property>

Property Name
Default value is false. When this is set to true, a separate thread is spawned to do the invocation so that the invoke activity does not block the instance.
<composite name=”mybpelproc”>
<property name=””>true</property>
Enables message boundary validation. When set to true, the XML message is validated against the XML schema during a receive activity and an invoke activity for this partner link. If the XML message is invalid, then a bpelx:invalidVariables runtime fault is thrown. This overrides the domain level validateXML property. The following example enables validation for only the myproc partner:
<partnerLinkBinding name="StarLoanService">
<property name="wsdlLocation">
<property name="validateXML">true</property>

 How to Get the Value of a Preference within a BPEL Process
The value of a property can be read by a BPEL process using the XPath extension function ora:getPreference(myPref). This gets the value of bpel.preference.myPref.
This function can be used as part of a simple assign statement, used in condition expressions, or used as part of a more complex XPath expression.

You cannot specify deployment descriptor properties at runtime.


Post a Comment

Blogger Profile