Fault Policies Introduction to Oracle Mediator Error Handling
21.1.1.2 Actions
Actions specify the tasks to perform when an error occurs. Oracle Mediator provides a list of actions that you can use in a fault policy. These predefined actions are described in the following list: ■ Retry: Retry actions such as enqueueing a message to a JMS queue that is stopped, inserting a record with a unique key constraint error, and so on, enable you to retry a task that caused the error. A new thread is started with every retry action. Therefore, with every retry action, a new transaction starts. Table 21–1 describes the options available with the retry action. Table 21–1 Retry Action Options Option Description Retry Count Retry N times. Retry Interval Delay in seconds for a retry. Exponential Backoff Retry interval increase with an exponential backoff. Retry Failure Action Chain to this action if a retry N times fails. Retry Success Action Chain to this action if a retry succeeds. Using Oracle Mediator Error Handling 21-5 Example 21–6 shows how to specify the retry action: Example 21–6 Retry Action Action id=ora-retry retry retryCount3retryCount retryInterval2retryInterval exponentialBackoff retryFailureAction ref=ora-java retrySuccessAction ref=ora-java retry Action If you set the retry Interval in the fault policy to a duration of less than 30 seconds, then the retry may not happen within the specified intervals. This is because the default value of the org.quartz.scheduler.idleWaitTime property is 30 seconds, and the scheduler waits for 30 seconds before retrying for available triggers, when the scheduler is otherwise idle. If the retry interval is set to a value of less than 30 seconds, then latency is expected. If you want the system to use a retry interval that is less than 30 seconds, add the following property under the section property name=quartzProperties in the fabric-config-core.xml file: org.quartz.scheduler.idleWaitTime=value ■ Human intervention: You can specify this action in the following way: Action id=ora-human-interventionhumanInterventionAction ■ Abort: This action enables you to abort the flow. You can specify this action in the following way: Action id=ora-terminateabortAction ■ Java code: This action enables you to call a customized Java class that implements the oracle.integration.platform.faultpolicy.IFaultRecoveryJavaCla ss interface. You can specify this action as shown in Example 21–7 : Example 21–7 Customized Java Class Calling Action id=ora-java javaAction className=mypackage.myClass defaultAction=ora-terminate returnValue value=ABORT ref=ora-terminate returnValue value=RETRY ref=ora-retry Note: Exponential backoff indicates that the next retry attempt is scheduled at 2 x the delay, where delay is the current retry interval. For example, if the current retry interval is 2 seconds, the next retry attempt is scheduled at 4, the next at 8, and the next at 16 seconds until the retryCount value is reached. Note: The implemented Java class must implement a method that returns a string. The policy can be chained to a new action based on the returned string. 21-6 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite returnValue value=MANUAL ref=ora-human-intervention javaAction Action For more information, see Example 21–8 and Example 21–9 . Example 21–8 oracle.integration.platform.faultpolicy.IFaultRecoveryJavaClass Interface oracle.integration.platform.faultpolicy.IFaultRecoveryJavaClass { public void handleRetrySuccessIFaultRecoveryContext ctx; public String handleFaultIFaultRecoveryContext ctx; } Example 21–9 oracle.integration.platform.faultpolicy.IFaultRecoveryContext Interface public interface IFaultRecoveryContext { Gets implementation type of the fault. return public String getType; return Get property set of the fault policy action being executed. public Map getProperties; return Get fault policy id of the fault policy being executed. public String getPolicyId; return Name of the faulted reference. public String getReferenceName; return Port type of the faulted reference link. public QName getPortType; } Oracle Mediator Service Engine Implementation Example 21–10 shows the Oracle Mediator service engine implementation of the IFaultRecoveryContext interface. Example 21–10 IFaultRecoveryContext Interface Implementation package oracle.tip.mediator.common.error.recovery; public class MediatorRecoveryContext implements IFaultRecoveryContext{ ... } You can use the methods shown in Example 21–11 to retrieve additional Oracle Mediator-specific data available with the MediatorRecoveryContext class: Using Oracle Mediator Error Handling 21-7 Example 21–11 Methods for Retrieving Data public Fault getFault public CalloutMediatorMessage getMediatorMessage Example 21–12 shows how to retrieve data using the CalloutMediatorMessage interface: Example 21–12 Data Retrieval Using the CalloutMediatorMessage Interface Accessing Mediator Message properties by providing the property name param propertyName return throws MediatorException public Object getPropertyString propertyName; Accessing Mediator Message properties return throws MediatorException public Map getProperties; Accessing instance id of the mediator message This will be the mediator instance id created for that particular message object return throws MediatorException public String getId throws MediatorException; Accessing payload of the mediator message object return throws MediatorException public Map getPayload; Accessing header of the mediator message object return throws MediatorException public ListElement getHeaders; Accessing componentDN for mediator component return throws MediatorException public String getComponentDN Setting payload to the mediator message return throws MediatorCalloutException 21-8 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite public void addPayloadString partName,Object payload throws MediatorCalloutException; Adding property to the mediator message return throws MediatorCalloutException public void addPropertyString name,Object value throws MediatorCalloutException; Adding header to the mediator message return throws MediatorCalloutException public void addHeaderObject header throws MediatorCalloutException;21.1.2 Fault Bindings
Fault bindings associate fault policies with composites or components, and are defined in the fault-bindings.xml file. Create the fault-bindings.xml file based on the XML schema defined in Section 21.4.2, Schema Definition File for fault-bindings.xml. Fault policies can be created at the following levels: ■ Composite: You can define one fault policy for all Oracle Mediator components in a composite. You can specify this level in the following way: composite faultPolicy=ConnectionFaults ■ Component: You can define a fault policy exclusively for an Oracle Mediator service component. A component-level fault policy overrides the composite-level fault policy. You can specify this level as shown in Example 21–13 . Example 21–13 Definition of a Fault Policy for an Oracle Mediator component faultPolicy=ConnectionFaults nameComponent1name nameComponent2name component ■ Reference: You can define a fault policy for the references of an Oracle Mediator component. You can specify this level as shown in Example 21–14 . Example 21–14 Definition of a Fault Policy for a Reference reference faultPolicy=policy1 nameDBAdapter3name reference A sample fault binding file is shown in Example 21–15 . Note: Human intervention is the default action for errors that do not have a fault policy defined. Using Oracle Mediator Error Handling 21-9 Example 21–15 Sample Fault Binding File ?xml version=1.0 encoding=UTF-8? faultPolicyBindings version=2.0.1 xmlns=http:schemas.oracle.combpelfaultpolicy xmlns:xsi=http:www.w3.org2001XMLSchema-instance composite faultPolicy=ConnectionFaults faultPolicyBindings21.1.3 Error Groups in Oracle Mediator
You can specify an action for an error type or error group while defining the conditions in a fault policy. In the previous examples, medns:mediatorFault indicates that the error is an Oracle Mediator error, whereas medns:TYPE_FATAL_ MESH refers to an error group. An error group consists of one or more child error types. TYPE_ALL is an error group that contains all Oracle Mediator errors. The following list describes various error groups contained in the TYPE_ALL error group: ■ TYPE_DATA: Contains errors related to data handling. – TYPE_DATA_ASSIGN: Contains errors related to data assignment. – TYPE_DATA_FILTERING: Contains errors related to data filtering. – TYPE_DATA_TRANSFORMATION: Contains errors that occur during a transformation. – TYPE_DATA_VALIDATION: Contains errors that occur during payload validation. ■ TYPE_METADATA: Contains errors related to Oracle Mediator metadata. – TYPE_METADATA_FILTERING: Contains errors that occur while processing the filtering conditions. – TYPE_METADATA_TRANSFORMATION: Contains errors that occur while getting the metadata for a transformation. – TYPE_METADATA_VALIDATION: Contains errors that occur during validation of metadata for Oracle Mediator .mplan file. – TYPE_METADATA_COMMON: Contains other errors that occur during the handling of metadata. ■ TYPE_FATAL: Contains fatal errors that are not easily recoverable. – TYPE_FATAL_DB: Contains database-related fatal errors, such as a Datasource not found error. – TYPE_FATAL_CACHE: Contains Oracle Mediator cache-related fatal errors. – TYPE_FATAL_ERRORHANDLING: Contains fatal errors that occur during error handling such as Resubmission queues not available. – TYPE_FATAL_MESH: Contains fatal errors from the Service Infrastructure such as Invoke service not available. – TYPE_FATAL_MESSAGING: Contains fatal messaging errors arising from the Service Infrastructure. – TYPE_FATAL_TRANSACTION: Contains fatal errors related to transactions such as Commit cant be called on a transaction which is marked for rollback. 21-10 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite – TYPE_FATAL_TRANSFORMATION: Contains fatal transformation errors such as an error occurring because of the XPath functions used in a transformation. ■ TYPE_TRANSIENT: Contains transient errors that can be recovered on a retry. – TYPE_TRANSIENT_MESH: Contains errors related to the Service Infrastructure. – TYPE_TRANSIENT_MESSAGING: Contains errors related to JMS such as enqueuing and dequeuing. ■ TYPE_INTERNAL: Contains internal errors.21.2 Using Error Handling with Oracle Mediator
You can enable error handling for an Oracle Mediator by using the fault-policies.xml and fault-bindings.xml files.21.2.1 How to Use Error Handling for an Oracle Mediator Service Component
To use error handling for an Oracle Mediator service component: 1. Create a fault-policies.xml file based on the schema defined in Section 21.4.1, Schema Definition File for fault-policies.xml. 2. Create a fault-bindings.xml file based on the schema defined in Section 21.4.2, Schema Definition File for fault-bindings.xml. 3. Copy the fault-policies.xml and the fault-bindings.xml file to your SOA composite application project directory. 4. Deploy the SOA composite application project.21.2.2 What Happens at Runtime
All the fault policies for a composite are loaded when the first error occurs. At runtime, Oracle Mediator checks whether there is any policy defined for the current error. If a fault policy is defined, then Oracle Mediator performs the action according to the configuration in the fault policies file. If there is no fault policy defined, then the default action of human intervention is performed.21.3 Fault Recovery Using Oracle Enterprise Manager Fusion Middleware Control
Apart from policy-based recovery using the fault policy file, you can also perform fault recovery actions on Oracle Mediator faults identified as recoverable in Oracle Enterprise Manager Fusion Middleware Control. This can be performed in the following ways: ■ Manual recovery by modifying the payload using Oracle Enterprise Manager Fusion Middleware Control ■ Bulk recovery without modifying the payload using Oracle Enterprise Manager Fusion Middleware Control ■ Aborting a faulted instance using Oracle Enterprise Manager Fusion Middleware Control, if you do not want to do any more processing on the instance. Using Oracle Mediator Error Handling 21-11 For more information about fault recovery using Oracle Enterprise Manager Fusion Middleware Control, see Oracle Fusion Middleware Administrators Guide for Oracle SOA Suite and Oracle BPM Suite.21.4 Error Handling XML Schema Definition Files
This section describes the schema files for the fault-policies.xml and fault-bindings.xml files.21.4.1 Schema Definition File for fault-policies.xml
The fault-policies.xml file should be based on the XSD file shown in Example 21–16 . Example 21–16 XSD File for fault-policies.xml ?xml version=1.0 encoding=UTF-8? xs:schema targetNamespace=http:schemas.oracle.combpelfaultpolicy xmlns:tns=http:schemas.oracle.combpelfaultpolicy xmlns:xs=http:www.w3.org2001XMLSchema elementFormDefault=qualified -- Conditions contain a list of fault names -- xs:element name=Conditions xs:complexType xs:sequence xs:element name=faultName type=tns:faultNameType maxOccurs=unbounded xs:sequence xs:complexType xs:element -- action Ref must exist in the same file -- xs:complexType name=actionRefType xs:attribute name=ref type=xs:string use=required xs:complexType -- one condition has a test and action, if test is missing, this is the catch all condition -- xs:complexType name=conditionType xs:all xs:element name=test type=tns:idType minOccurs=0 xs:element name=action type=tns:actionRefType xs:all xs:complexType -- One fault name match contains several conditions -- xs:complexType name=faultNameType xs:sequence xs:element name=condition type=tns:conditionType maxOccurs=unbounded xs:sequence xs:attribute name=name type=xs:QName xs:complexType xs:complexType name=ActionType xs:choice xs:element name=retry type=tns:RetryType xs:element ref=tns:rethrowFault xs:element ref=tns:humanIntervention xs:element ref=tns:abort xs:element ref=tns:replayScope xs:element name=javaAction type=tns:JavaActionType xs:key name=UniqueReturnValue xs:selector xpath=tns:returnValueParts
» Oracle Fusion Middleware Online Documentation Library
» Introduction to Service-Oriented Architecture
» Introduction to Services Oracle Fusion Middleware Online Documentation Library
» Introduction to Oracle SOA Suite
» Standards Used by Oracle SOA Suite to Enable SOA
» Service Components Service Component Architecture within SOA Composite Applications
» Binding Components Service Component Architecture within SOA Composite Applications
» Wires Service Component Architecture within SOA Composite Applications
» Service Infrastructure Runtime Behavior of a SOA Composite Application
» Approaches for Designing SOA Composite Applications Learning Oracle SOA Suite
» What Happens When You Create a SOA Application and Project
» Click OK. How to Add a Service Component
» From the File main menu, select Save All.
» What You May Need to Know About Adding and Deleting a Service Component
» Click Finish. In the Application Navigator, double-click composite.xml or single-click
» Configure the settings for the service. For help with a service editor, click Help or Click OK.
» If you want to select a new message schema, click Help or press F1 for
» Configure the settings for the reference binding component. For help with a
» Click OK. How to Add a Reference Binding Component
» What You May Need to Know About Adding and Deleting References
» What You May Need to Know About WSDL References
» What You May Need to Know About Mixed Message Types in a WSDL File
» Click the Source tab to review what you have created.
» What You May Need to Know About Adding and Deleting Wires
» Adding Security Oracle Fusion Middleware Online Documentation Library
» How to Test a Deployed Composite
» Store Front Module Introduction to the Fusion Order Demo
» WebLogic Fusion Order Demo Application
» Task 1: Install Oracle JDeveloper Studio
» Task 2: Install the Fusion Order Demo Application
» If you are deploying remotely from one computer that has Oracle JDeveloper to
» Understanding the OrderBookingComposite Flow
» Click Finish. Task 1: Create a Connection to an Oracle WebLogic Server
» Enter weblogic for the User Name and the password for that administrator in
» Click Next. Optional Task 2: Create a Connection to the Oracle BAM Server
» Click Test Connection. Optional Task 2: Create a Connection to the Oracle BAM Server
» Click Finish. Optional Task 2: Create a Connection to the Oracle BAM Server
» To the right of the Connection field, click the Edit icon, as shown in
» In the Summary page, click Finish. From the Application menu, choose Deploy StoreFrontModule.
» From the Application Navigator, expand OrderBookingComposite, then SOA
» From the Oracle JDeveloper main menu, choose File Save All. Keep the
» From the Application Navigator, expand bin, and then Resources.
» From the Component Palette, drag a BPEL Process service component into the
» From the Application Navigator, select File New Applications SOA
» In the Application Name dialog, enter an application name in the Application
» In the Directory field, enter a directory path in which to create the SOA
» Click Next. Oracle Fusion Middleware Online Documentation Library
» In the Project Name dialog, enter a name in the Project Name field.
» In the Project SOA Settings dialog, select Composite With BPEL Process.
» Click Finis Oracle Fusion Middleware Online Documentation Library
» Introduction to Activities Oracle Fusion Middleware Online Documentation Library
» Introduction to Partner Links
» Partner Links for an Outbound Adapter
» Introduction to Technology Adapters
» Introduction to BPEL Process Monitors
» Introduction to One-Way Messages
» Introduction to Synchronous Interactions
» Introduction to Asynchronous Interactions
» Introduction to Asynchronous Interactions with a Timeout
» Introduction to Asynchronous Interactions with a Notification Timer
» Introduction to One Request, Multiple Responses
» Introduction to One Request, One of Two Possible Responses
» Introduction to One Request, a Mandatory Response, and an Optional Response
» Introduction to Partial Processing Introduction to Multiple Application Interactions
» Data Manipulation and XPath Standards
» Right-click the Variables folder and select Expand All Child Nodes.
» In the second Variables folder, right-click and select Create Variable.
» In the Name field, enter a name.
» Click the Entity Variable checkbox and select the Search icon to the right of the
» To the right of the Entity Variable field, click the Search icon.
» In the Unique Keys section, click the Add icon.
» Click OK to close the Specify Key dialog.
» How to Declare SDO-based Variables
» How to Convert from XML to SDO
» How To Assign a Literal XML Element
» How to Copy Between Variables
» How to Access Fields Within Element-Based and Message Type-Based Variables
» How To Use Mathematical Calculations with XPath Standards
» How to Assign Boolean Values
» How to Assign a Date or Time
» How to Manipulate Attributes
» How to Use bpelx:insertBefore
» How to Use bpelx:insertAfter
» How to Use bpelx:rename and XSD Type Casting
» How to Use Assign Extension Attributes
» From the BPEL Constructs section of the Component Palette, drag an Assign
» Double-click the Assign activity.
» In the General tab, enter a name for the activity and select the Validate
» Click the Source tab to view the syntax.
» From the Oracle Extensions section of the Component Palette, drag a Validate
» Double-click the Validate icon.
» Click the Add icon to select the variable to validate.
» Select the variable, then click OK.
» What Happens When You Map WSDL Message Parts
» Importing Process Definitions in BPEL 2.0
» How to Statically Index into an XML Data Sequence That Uses Arrays
» How to Use SOAP-Encoded Arrays
» How to Determine Sequence Size
» How to Dynamically Index by Applying a Trailing XPath to an Expression
» What You May Need to Know About Using the Array Identifier
» How To Convert from a String to an XML Element
» How to Receive SOAP Headers in BPEL How to Send SOAP Headers in BPEL
» Select the Extensions folder, then click the Add icon.
» In the Namespace field, enter the extension namespace to declare. This namespace
» If you want the extensions to be recognized by the BPEL process, select the Must
» Click OK. How to Declare Extension Namespaces
» Click Close. How to Declare Extension Namespaces
» What Happens When You Create an Extension
» Introduction to Invoking a Synchronous Web Service
» The Assign_CreditCheckInput assign activity packages the data from the client.
» The InvokeCheckCreditCard activity calls the CreditCardAuthorization service.
» The Switch_EvaluateCCResult switch activity in
» What Happens When You Invoke a Synchronous Web Service
» What You May Need to Know About SyncMaxWaitTime and Synchronous Requests Not Timing Out
» Calling a One-Way Mediator with a Synchronous BPEL Process
» Introduction to Invoking an Asynchronous Web Service
» Drag a Partner Link icon into the right Partner Links swimlane.
» Enter the variable name and select Message Type from the options provided:
» Click OK. How to Invoke an Asynchronous Web Service
» Double-click the invoke activity to display the Invoke dialog.
» In the Invoke dialog, select the partner link from the Partner Link list for this
» Double-click the receive activity and change its name to receive_invoke.
» From the Partner Link list, select the partner link for this example, LoanService is
» From the Operation list, select onResult. Do not select the Create Instance
» Select the variable you created in Step 3 through Step 7 of
» Performing Additional Activities Click OK.
» What Happens When You Invoke an Asynchronous Web Service
» What You May Need to Know About Limitations on BPEL 2.0 IMA Support
» What Happens When You Specify a Conversation ID
» Create a WSDL file that contains multiple services that use the same portType.
» Create a reference binding component entry in the composite.xml file that uses
» How to Use WS-Addressing in an Asynchronous Service
» Click Return or click a node in the System MBean Browser pane.
» Click OK. In the Service Name field of the Service Name dialog, enter SecondFileRead
» Select an appropriate XSD schema file. For this example, Book1_6.xsd is the
» Creating an Initial Receive Activity
» In the Create Variable dialog, click OK.
» Ensure that you selected the Create Instance checkbox, as mentioned in Step 4.
» Click OK. How to Use Correlation Sets in an Asynchronous Service
» Double-click the receive icon to display the Receive dialog.
» From the Component Palette, drag a third Receive activity beneath the
» Creating an Initial Correlation Set
» In the second Correlation Sets folder, right-click and select Create Correlation Set.
» In the Name field of the Create Correlation Set dialog, enter CorrelationSet1.
» In the Properties section, click the Add icon to display the Property Chooser
» Select Properties, then click the Add icon first icon at the top to display the
» In the Name field, enter NameCorr.
» To the right of the Type field, click the Browse icon.
» In the Type Chooser dialog, select string and click OK.
» Click OK to close the Create Property dialog, the Property Chooser dialog, and the
» Right-click the Correlation Sets folder and select Create Correlation Set.
» In the Name field of the Create Correlation Set dialog, enter CorrelationSet2.
» Select Properties, then click the Add icon to display the Create Property dialog.
» In the Name field, enter IDCorr.
» In the Type Chooser dialog, select double and click OK.
» Associating the First Correlation Set with a Receive Activity
» Creating Property Aliases for NameCorr You create the following two property
» In the Query field, press Ctrl+Space to define the following XPath expression:
» Step 7: Reviewing WSDL File Content
» Click WSBinding. Introduction to Parallel Flows in BPEL Processes
» How to Create a Parallel Flow
» What Happens When You Create a Parallel Flow
» Drag appropriate activities into the flow activity to define as the source with the
» Click Apply, then OK. Click Apply, then OK.
» Customizing the Number of Flow Activities with the flowN Activity in BPEL 1.1
» If you want to specify a completion condition that enables the forEach activity to
» What Happens When You Create a forEach Activity
» Introduction to Conditional Branching
» What Happens When You Create a Switch Activity
» In the Condition field, enter a condition, as shown in
» What Happens When You Create an If Activity
» What Happens When You Create a While Activity
» In the Condition field, click the XPath Expression Builder icon to enter an XPath
» Enter a boolean XPath expression condition, and click OK.
» What Happens When You Create a repeatUntil Activity
» Click the Skip Condition tab.
» What Happens When You Specify XPath Expressions to Bypass Activity Execution
» Introduction to a Fault Handler
» BPEL 1.1 Standard Faults Introduction to BPEL Standard Faults
» BPEL 2.0 Standard Faults Introduction to BPEL Standard Faults
» Business Faults Introduction to Categories of BPEL Faults
» Runtime Faults Introduction to Categories of BPEL Faults
» Create a fault policy file for example, named fault-policies.xml. This file
» Additional Fault Policy and Fault Policy Binding File Samples
» Designing a Fault Policy with Multiple Rejection Handlers
» How to Execute a Fault Policy How to Use a Java Action Fault Policy
» What You May Need to Know Executing the Retry Action with Multiple Faults in the Same Flow
» What You May Need to Know About Binding Level Retry Execution Within Fault Policy Retries
» How to Catch BPEL Runtime Faults
» What Happens When You Rethrow Faults
» In the Comment field, enter a brief description of the functionality of the scope.
» In the Image field, click the Search icon to optionally change the graphical image
» Click OK. How to Add Descriptive Notes and Images to a Scope Activity
» To edit the note, double-click it.
» What Happens After You Create a Scope Activity
» What You May Need to Know About Scopes How to Use a Fault Handler Within a Scope
» Select the fault in the Fault Chooser dialog, and click OK. Click OK.
» What Happens When You Create a Replay Activity
» Double-click the terminate activity.
» What Happens When You Create a Terminate Activity
» Double-click the Exit activity, as shown in
» What Happens When You Create an Exit Activity
» bpelx:postAssert and bpelx:preAssert Extensions
» Use of faultName and message Attributes
» Multiple Assertions Throwing Faults with Assertion Conditions
» How to Disable Assertions What Happens When You Create Assertion Conditions
» Oracle BPEL Process Manager Transaction Semantics
» Introduction to Execution of One-way Invocations
» How to Wrap Java Code as a SOAP Service
» How to Embed Java Code Snippets in a BPEL Process in BPEL 2.0
» How to Use an XML Facade to Simplify DOM Manipulation
» How to Use bpelx:exec Built-in Methods
» How to Use Java Code Wrapped in a Service Interface
» In the Value field, specify the class path. Click Apply.
» How To Use Java Embedding in a BPEL Process in Oracle JDeveloper
» Redeploy the BPEL project and retest.
» In the Component Palette, expand BPEL Constructs. Drag a Pick activity into the designer.
» Double-click the onMessage branch.
» Edit its attributes to receive the response from the loan service.
» Click Add onAlarm, as shown in
» Click OK. How To Create a Pick Activity
» What Happens When You Create a Pick Activity
» What You May Need to Know About Simultaneous onMessage Branches in BPEL 2.0
» Timeout Settings Relative from When the Activity is Invoked
» Timeout Settings as an Absolute Date Time
» Event Added to the BPEL Instance Audit Trail During an Activity Timeout
» Recoverable Timeout Activities During a Server Restart Refresh Expiration Alarm Table
» In the Component Palette, expand BPEL Constructs. Drag a Receive activity into the designer.
» What Happens When You Set Timeouts for Request-Response Operations in Receive Activities
» Introduction to Event and Timeout Concepts Setting Timeouts for Synchronous Processes
» BPEL File Definition for the Master Process
» Enter the details described in Click OK. Drag a Receive Signal activity into the designer.
» Click OK. Drag a Signal activity into the designer. Double-click the Signal activity.
» Complete all remaining fields in the Invoke dialog, and click OK. In the designer, click Source.
» Introduction to the Notification Service
» Formatting the Body of an Email Message as HTML
» Click OK. How to Configure the SMS Notification Channel
» Click OK. How to Configure the Voice Notification Channel
» See How to Configure the Voice Notification Channel
» How to Select Email Addresses and Telephone Numbers Dynamically
» How to Select Notification Recipients by Browsing the User Directory
» How to Create and Send Headers for Notifications
» Click the Add icon to add a row to the Header and Name columns.
» In the Header column, click the field to display a list for selecting a value.
» In the Name column, enter a value.
» Click OK. How to Allow the End User to Select Notification Channels
» Introduction to Notification Channel Setup Introduction to Sensors
» Click the Browse icon above the Namespace field to select to create a fault sensor,
» In the Structure window, right-click the Sensor Actions folder. Select Create Sensor Action.
» Click Libraries and Classpath.
» Introduction to Oracle Mediator
» Introduction to the Mediator Editor Environment
» When you reach the Configure SOA Settings page, select Composite with Click Finish.
» On the Configure SOA Settings page of the New Gallery dialog, select Composite
» Under Categories, select Service Components, and then select Mediator from the
» What Happens When You Create an Oracle Mediator Without an Interface Definition
» To the right of the Event Definition File field, click Search and then browse to and Click OK.
» To the right of the WSDL URL field, click Define Service.
» What Happens When You Create an Oracle Mediator from a WSDL File
» What Happens When You Create an Oracle Mediator with a Synchronous Interface Definition
» What Happens When You Create an Oracle Mediator with an Asynchronous Interface Definition
» Click Add. To the right of the Event Definition field, click Search.
» In the Run as publisher field, select whether to run the event subscription under
» In the Expression field, enter an XPath expression and click OK.
» What Happens When You Create an Oracle Mediator for an Event Subscription
» What You May Need to Know About the Mediator Editor
» In the Interface Type field, select Synchronous Interface.
» Select the root element of the XSD file and click OK.
» Click OK on the Add Message Part dialog. Click OK.
» From the File menu, select Save All.
» Specifying Operation or Event Subscription Properties Introduction to Routing Rules
» In the Routing Rules section, click Add next to the operation for which you are
» Click Service. How to Create Static Routing Rules
» Click OK. How to Create Static Routing Rules
» Click Event. How to Create Static Routing Rules
» To the right of the Event Definition field, click Search.
» Select an event .edl file and click OK.
» What You May Need to Know About Echoing a Service
» How to Specify Sequential or Parallel Execution How to Configure Response Messages
» How to Handle Multiple Callbacks
» Click OK In the Faults section, click the Add another fault routing button shown in
» How to Create Transformations
» In the From section, select any of the following options from the Type list:
» In the To section, select any of the following options:
» Click OK in the Assign Value dialog.
» What You May Need to Know About the Assign Activity
» Click OK. In the Oracle JDeveloper Projects Explorer, right-click the name of the project
» Select Project Properties. How to Create Static Routing Rules
» In the left panel, select Libraries and Classpath, as shown in
» Click Add JARDirectory. How to Create Static Routing Rules
» Once the dynamic routing is created, you can modify the associated decision
» What You May Need to Know About Using Dynamic Routing Rules How to Define Default Routing Rules
» Click Service. Navigate to CustomerRouterProject References USCustomer and select Click OK.
» To the right of the Transform Using field, click the icon.
» Select Create New Mapper File and click OK.
» Drag and drop the imp1:CustomerData source element to the imp1:Customer
» From the During Auto Map options, deselect Match Elements Considering their
» From the Template list, select Asynchronous Interface.
» Deselect Create Composite Service with SOAP Bindings. Click OK.
» Double-click the Mediator Oracle Mediator.
» In the Routing Rules section, click Add to the far right side of execute and then
» Select Service. How to Create the AsyncMediator Use Case
» Navigate to AsyncMediatorSample BPEL Processes ServerBPELProcess
» How to Work with Multipart Request Messages
» How to Work with Multipart Reply, Fault, and Callback Source Messages
» How to Work with Multipart Target Messages
» Fault Policies Introduction to Oracle Mediator Error Handling
» Fault Bindings Introduction to Oracle Mediator Error Handling
» Error Groups in Oracle Mediator
» Fault Recovery Using Oracle Enterprise Manager Fusion Middleware Control
» Schema Definition File for fault-policies.xml
» Schema Definition File for fault-bindings.xml
» Identification of Groups and Sequence IDs
» Standard Resequencer Resequencing Order
» FIFO Resequencer Resequencing Order
» Best Effort Resequencer Resequencing Order
» How to Specify the Resequencing Level
» In the Group field, enter the XPath expression pointing to the field in the incoming
» Limitations in the Resequencer
» Understanding a Request-Reply Message Exchange Pattern
» Understanding a Request-Reply-Fault Message Exchange Pattern
» Understanding a Request-Callback Message Exchange Pattern
» Understanding a Request-Reply-Callback Message Exchange Pattern
» Understanding a Request-Reply-Fault-Callback Message Exchange Pattern
» Application Navigator Rules Designer Window
» Structure Window Overview of Rules Designer Editor Environment
» How to Create Business Rules Components
» Select Business Rule from the SOA Components section of the Component Palette
» In the Add Input Variable dialog box, expand the Process folder and select the
» In the Create Variable Type area click the Browse Elements icon. Use the
» Click the Import Schema File icon to import the schema. For example, import
» In the Type Chooser dialog, select ratingrequest and click OK.
» In the Create Business Rules dialog, click OK. This creates the Business Rule
» Double-click the Decision component for example the OracleRules1 business
» Select the decision function port of interest. For example, select the port for DF_2
» What You May Need to Know About Testing a Standalone Decision Service Component
» Introduction to the Oracle Business Rules Editor Component
» Enter useRulesDC in the Project Name field and ensure that ADF Faces is
» Click OK to close the Project Properties dialog box.
» In Oracle JDeveloper, in the Overview mode of weblogic.xml, select Libraries
» In the Weblogic console, select Deployments and click Install to display the
» What You May Need to Know About the Custom Permissions for the Rules Editor Component
» What You May Need to Know About the Supported Tags of the Rules Editor Component
» Introduction to the Oracle Business Rules Dictionary Component
» Launch the Weblogic server console
» Enter useRuleDictTaskFlow in the Project Name field and ensure that ADF
» Select Libraries and Classpath from the left panel and click Add Library to
» Introduction to Human Workflow
» Introduction to Design and Runtime Concepts
» Introduction to the Stages of Human Workflow Design
» From the File menu, select Save All. In the Component Palette, expand SOA Components.
» In the BPEL Variable column, click the Browse icon dots shown in
» Click OK. Designing a Human Task from Start to Finish
» Click OK to close the Human Task dialog.
» Click Next. Click Test Connection. Click Finish. From the File menu, select Save All.
» Human Workflow Services Introduction to Human Workflow Architecture
» Service Engines Introduction to Human Workflow Architecture
» Create a Human Task Definition
» Associate the Human Task Definition with a BPEL Process
» Click OK. How to Create a Human Task Service Component
» What Happens When You Create a Human Task Service Component
» Search for the owner by entering a search string such as jcooper, j, ,
» View the hierarchy of a user by highlighting the user and clicking Hierarchy.
» View the details of a user or group by highlighting the user or group and
» Click OK to return to the Identity Lookup dialog.
» Click Select to add the user to the Selected User section.
» Click OK to return to the Human Task Editor.
» Select an option from the list for example, Parallel stage.
» Select Route task to all participants, in order specified from the list shown in
» Introduction to Advanced Task Routing Using Business Rules You can define state
» Facts A fact is an object with certain business data. Each time a routing slip
» To the right of Rules Dictionary, click the Edit icon, as shown in
» Select Use External Routing from the list. Click the Edit icon, as shown in
» Configuring the Error Assignee
» Click the Assignment tab. Click the Add icon to assign reviewers or error assignees, as shown in
» Specifying Multilingual Settings Click the Search icon to select the style sheet as an attachment.
» In the Resource Name field, enter the name of the resource used in the resource
» In the Resource Location field, click the Search icon to select the JAR or ZIP
» Notifying Recipients of Changes to Task Status
» Editing the Notification Message
» Setting Up Reminders Changing the Character Set Encoding
» Securing Notifications to Exclude Details Showing the Oracle BPM Worklist URL in Notifications
» Sending Email Notifications to Groups and Application Roles
» Assign privileges read, write, or no access to users to act upon task content. Note
» Specifying a Certificate Authority
» Click the Add icon to add name and value pairs for the property map passed to Click OK.
» Click OK. How to Specify Java or Business Event Callbacks
» In the Event field, select the event to which to subscribe.
» Expand the Variables tree shown in
Show more