Skip Headers
Oracle® Fusion Middleware Developer's Guide for Oracle SOA Suite
11
g
Release 1 (11.1.1)
Part Number E10224-03
Home
Book List
Index
Contact Us
Next
View PDF
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
Part I Introduction to Oracle SOA Suite
1
Introduction to Building Applications with Oracle SOA Suite
1.1
Introduction to Service-Oriented Architecture
1.2
Introduction to Services
1.3
Introduction to Oracle SOA Suite
1.4
Standards Used by Oracle SOA Suite to Enable SOA
1.5
Service Component Architecture within SOA Composite Applications
1.5.1
Service Components
1.5.2
Binding Components
1.5.3
Wires
1.6
Runtime Behavior of a SOA Composite Application
1.6.1
Service Infrastructure
1.6.2
Service Engines
1.6.3
Deployed Service Archives
1.7
Approaches for Designing SOA Composite Applications
1.8
Learning Oracle SOA Suite
2
Developing SOA Composite Applications with Oracle SOA Suite
2.1
Creating a SOA Application
2.1.1
How to Create a SOA Application and Project
2.1.2
What Happens When You Create a SOA Application and Project
2.2
Adding Service Components
2.2.1
How to Add a Service Component
2.2.2
What You May Need to Know About Adding and Deleting a Service Component
2.2.3
How to Edit a Service Component
2.3
Adding Service Binding Components
2.3.1
How to Add a Service Binding Component
2.3.2
How to Add a WSDL for a Web Service
2.3.3
How to View Schemas
2.3.4
How to Edit a Service Binding Component
2.3.5
What You May Need to Know About Adding and Deleting Services
2.4
Adding Reference Binding Components
2.4.1
How to Add a Reference Binding Component
2.4.2
What You May Need to Know About Adding and Deleting References
2.4.3
What You May Need to Know About WSDL References
2.4.4
What You May Need to Know About Invoking the Default Revision of a Composite
2.5
Adding Wires
2.5.1
How to Wire a Service and a Service Component
2.5.2
How to Wire a Service Component and a Reference
2.5.3
What You May Need to Know About Adding and Deleting Wires
2.6
Adding Security
2.7
Deploying a SOA Composite Application
2.7.1
How to Invoke Deployed Composites
2.8
Managing and Testing a SOA Composite Application
2.8.1
How to Manage Deployed Composites
2.8.2
How to Test a Deployed Composite
3
Introduction to the SOA Sample Application
3.1
Introduction to the Fusion Order Demo
3.1.1
Store Front Module
3.1.2
WebLogic Fusion Order Demo Application
3.2
Setting Up the Fusion Order Demo Application
3.2.1
Task 1: Install Oracle JDeveloper Studio
3.2.2
Task 2: Install the Fusion Order Demo Application
3.2.3
Task 3: Install Oracle SOA Suite
3.3
Taking a Look at the WebLogic Fusion Order Demo Application
3.3.1
Project Applications of the WebLogic Fusion Order Demo Application
3.3.2
The composite.xml File
3.4
Understanding the OrderBookingComposite Flow
3.5
Deploying Fusion Order Demo
3.5.1
Task 1: Create a Connection to an Oracle WebLogic Server
3.5.2
(Optional) Task 2: Create a Connection to the Oracle BAM Server
3.5.3
Task 3: Install the Schema for the Fusion Order Demo Application
3.5.4
Task 4: Set Configuration Property for the Store Front Module
3.5.5
Task 5: Deploy the Store Front Module
3.5.6
Task 6: Deploy the WebLogic Fusion Order Demo Application
3.6
Running Fusion Order Demo
3.7
Viewing Data Sent to Oracle BAM Server
3.8
Undeploying the Composites for the WebLogic Fusion Order Demo Application
Part II Using the BPEL Process Service Component
4
Getting Started with Oracle BPEL Process Manager
4.1
Introduction to the BPEL Process Service Component
4.1.1
How to Add a BPEL Process Service Component
4.2
Introduction to Activities
4.3
Introduction to Partner Links
4.4
Creating a Partner Link
4.4.1
How to Create a Partner Link
4.4.1.1
Partner Links for an Outbound Adapter
4.4.1.2
Partner Links for an Inbound Adapter
4.4.1.3
Partner Links from an Abstract WSDL to Call a Service
4.4.1.4
Partner Links from an Abstract WSDL to Implement a Service
4.4.1.5
Partner Links and Human Tasks or Business Rules
4.4.1.6
Partner Links from an Existing Human Task, Business Rule, or Oracle Mediator
4.5
Introduction to Technology Adapters
4.6
Introduction to BPEL Process Monitors
4.7
Migrating Custom SOA Composite Applications in Oracle JDeveloper
4.7.1
How to Migrate a Custom SOA Composite Application
5
Introduction to Interaction Patterns in a BPEL Process
5.1
Introduction to One-Way Messages
5.2
Introduction to Synchronous Interactions
5.3
Introduction to Asynchronous Interactions
5.4
Introduction to Asynchronous Interactions with a Timeout
5.5
Introduction to Asynchronous Interactions with a Notification Timer
5.6
Introduction to One Request, Multiple Responses
5.7
Introduction to One Request, One of Two Possible Responses
5.8
Introduction to One Request, a Mandatory Response, and an Optional Response
5.9
Introduction to Partial Processing
5.10
Introduction to Multiple Application Interactions
6
Manipulating XML Data in a BPEL Process
6.1
Introduction to Manipulating XML Data in BPEL Processes
6.1.1
XML Data in BPEL
6.1.2
Data Manipulation and XPath Standards
6.2
Delegating XML Data Operations to Data Provider Services
6.2.1
How to Create an Entity Variable
6.2.1.1
Understanding How SDO Works in the Inbound Direction
6.2.1.2
Understanding How SDO Works in the Outbound Direction
6.2.1.3
Creating an Entity Variable and Choosing a Partner Link
6.2.1.4
Creating a Binding Key
6.3
Using Standalone SDO-based Variables
6.3.1
How to Declare SDO-based Variables
6.3.2
How to Convert from XML to SDO
6.4
Initializing a Variable with Expression Constants or Literal XML
6.4.1
How To Assign a Literal XML Element
6.5
Copying Between Variables
6.5.1
How to Copy Between Variables
6.6
Accessing Fields Within Element-Based and Message Type-Based Variables
6.6.1
How to Access Fields Within Element-Based and Message Type-Based Variables
6.7
Assigning Numeric Values
6.7.1
How to Assign Numeric Values
6.8
Using Mathematical Calculations with XPath Standards
6.8.1
How To Use Mathematical Calculations with XPath Standards
6.9
Assigning String Literals
6.9.1
How to Assign String Literals
6.10
Concatenating Strings
6.10.1
How to Concatenate Strings
6.11
Assigning Boolean Values
6.11.1
How to Assign Boolean Values
6.12
Assigning a Date or Time
6.12.1
How to Assign a Date or Time
6.13
Manipulating Attributes
6.13.1
How to Manipulate Attributes
6.14
Manipulating XML Data with bpelx Extensions
6.14.1
How to Use bpelx:append
6.14.2
How to Use bpelx:insertBefore
6.14.3
How to Use bpelx:insertAfter
6.14.4
How to Use bpelx:remove
6.14.5
How to Use bpelx:rename and XSD Type Casting
6.14.6
How to Use bpelx:copyList
6.15
Validating XML Data with bpelx:validate
6.15.1
How to Validate XML Data with bpelx:validate
6.16
Manipulating XML Data Sequences That Resemble Arrays
6.16.1
How to Statically Index into an XML Data Sequence That Uses Arrays
6.16.2
How to Determine Sequence Size
6.16.3
How to Dynamically Index by Applying a Trailing XPath to an Expression
6.16.3.1
Applying a Trailing XPath to the Result of getVariableData
6.16.3.2
Using the bpelx:append Extension to Append New Items to a Sequence
6.16.3.3
Merging Data Sequences
6.16.3.4
Generating Functionality Equivalent to an Array of an Empty Element
6.16.4
What You May Need to Know About SOAP-Encoded Arrays
6.16.5
What You May Need to Know About Using the Array Identifier
6.17
Converting from a String to an XML Element
6.17.1
How To Convert from a String to an XML Element
6.18
Understanding the Differences Between Document-Style and RPC-Style WSDL Files
6.18.1
How To Use RPC-Style Files
6.19
Manipulating SOAP Headers in BPEL
6.19.1
How to Receive SOAP Headers in BPEL
6.19.2
How to Send SOAP Headers in BPEL
6.20
Using MIME/DIME SOAP Attachments
7
Invoking a Synchronous Web Service from a BPEL Process
7.1
Introduction to Invoking a Synchronous Web Service
7.2
Invoking a Synchronous Web Service
7.2.1
How to Invoke a Synchronous Web Service
7.2.2
What Happens When You Invoke a Synchronous Web Service
7.2.2.1
Partner Link in the BPEL Code
7.2.2.2
Partner Link Type and Port Type in the BPEL Code
7.2.2.3
Invoke Activity for Performing a Request
7.2.2.4
Synchronous Invocation in BPEL Code
7.3
Specifying Timeout Values
7.3.1
How To Specify Timeout Values
7.3.2
What You May Need to Know About SyncMaxWaitTime and Synchronous Requests Not Timing Out
7.4
Calling a One-Way Mediator with a Synchronous BPEL Process
8
Invoking an Asynchronous Web Service from a BPEL Process
8.1
Introduction to Invoking an Asynchronous Web Service
8.2
Invoking an Asynchronous Web Service
8.2.1
How to Invoke an Asynchronous Web Service
8.2.1.1
Adding a Partner Link for an Asynchronous Service
8.2.1.2
Adding an Invoke Activity
8.2.1.3
Adding a Receive Activity
8.2.1.4
Performing Additional Activities
8.2.2
What Happens When You Invoke an Asynchronous Web Service
8.2.2.1
portType Section of the WSDL File
8.2.2.2
partnerLinkType Section of the WSDL File
8.2.2.3
Partner Links Section in the BPEL File
8.2.2.4
Composite Application File
8.2.2.5
Invoke and Receive Activities
8.2.2.6
createInstance Attribute for Starting a New Instance
8.2.2.7
Dehydration Points for Maintaining Long-Running Asynchronous Processes
8.2.2.8
Multiple Runtime Endpoint Locations
8.3
Using a Dynamic Partner Link at Runtime
8.3.1
How To Add and Use a Dynamic Partner Link at Runtime
8.4
Using WS-Addressing in an Asynchronous Service
8.4.1
How to Use WS-Addressing in an Asynchronous Service
8.4.1.1
Using TCP Tunneling to See Messages Exchanged Between Programs
8.5
Using Correlation Sets in an Asynchronous Service
8.5.1
How to Use Correlation Sets in an Asynchronous Service
8.5.1.1
Step 1: Creating a Project
8.5.1.2
Step 2: Configuring Partner Links and File Adapter Services
8.5.1.3
Step 3: Creating Three Receive Activities
8.5.1.4
Step 4: Creating Correlation Sets
8.5.1.5
Step 5: Associating Correlation Sets with Receive Activities
8.5.1.6
Step 6: Creating Property Aliases
8.5.1.7
Step 7: Reviewing WSDL File Content
9
Using Parallel Flow in a BPEL Process
9.1
Introduction to Parallel Flows in BPEL Processes
9.2
Creating a Parallel Flow
9.2.1
How to Create a Parallel Flow
9.2.2
What Happens When You Create a Parallel Flow
9.3
Customizing the Number of Flow Activities with the flowN Activity
9.3.1
How to Create a flowN Activity
9.3.2
What Happens When You Create a FlowN Activity
10
Using Conditional Branching in a BPEL Process
10.1
Introduction to Conditional Branching
10.2
Creating a Switch Activity to Define Conditional Branching
10.2.1
How to Create a Switch Activity
10.2.2
What Happens When You Create a Switch Activity
10.3
Creating a While Activity to Define Conditional Branching
10.3.1
How To Create a While Activity
10.3.2
What Happens When You Create a While Activity
11
Using Fault Handling in a BPEL Process
11.1
Introduction to a Fault Handler
11.2
Introduction to BPEL Standard Faults
11.3
Introduction to Categories of BPEL Faults
11.3.1
Business Faults
11.3.2
Runtime Faults
11.3.2.1
bindingFault
11.3.2.2
remoteFault
11.3.2.3
replayFault
11.4
Using the Fault Management Framework
11.4.1
How to Design a Fault Policy
11.4.1.1
Understanding How Fault Policy Binding Resolution Works
11.4.1.2
Creating a Fault Policy File for Automated Fault Recovery
11.4.1.3
Associating a Fault Policy with Fault Policy Binding
11.4.1.4
Additional Fault Policy and Fault Policy Binding File Samples
11.4.1.5
Designing a Fault Policy with Multiple Rejection Handlers
11.4.2
How to Execute a Fault Policy
11.4.3
How to Use a Java Action Fault Policy
11.4.4
What You May Need to Know About Fault Management Behavior When the Number of Instance Retries is Exceeded
11.4.5
What You May Need to Know About Binding Level Retry Execution Within Fault Policy Retries
11.5
Catching BPEL Runtime Faults
11.5.1
How to Catch BPEL Runtime Faults
11.6
Getting Fault Details with the getFaultAsString XPath Extension Function
11.6.1
How to Get Fault Details with the getFaultAsString XPath Extension Function
11.7
Throwing Internal Faults
11.7.1
How to Create a Throw Activity
11.7.2
What Happens When You Create a Throw Activity
11.8
Returning External Faults
11.8.1
How to Return a Fault in a Synchronous Interaction
11.8.2
How to Return a Fault in an Asynchronous Interaction
11.9
Using a Scope Activity to Manage a Group of Activities
11.9.1
How to Create a Scope Activity
11.9.2
What Happens After You Create a Scope Activity
11.9.3
What You May Need to Know About Scopes
11.9.4
How to Use a Fault Handler within a Scope
11.9.5
How to Create a Catch Activity
11.9.6
What Happens When You Create a Catch Branch
11.9.7
How to Create an Empty Activity to Insert No-Op Instructions into a Business Process
11.9.8
What Happens When You Create an Empty Activity
11.10
Using Compensation After Undoing a Series of Operations
11.10.1
How to Use Compensation After Undoing a Series of Operations
11.10.2
How to Create a Compensate Activity
11.10.3
What Happens When You Create a Compensate Activity
11.11
Using the Terminate Activity to Stop a Business Process Instance
11.11.1
How to Create a Terminate Activity
11.11.2
What Happens When You Create a Terminate Activity
12
Transaction and Fault Propagation Semantics in BPEL Processes
12.1
Introduction to Transaction Semantics
12.1.1
Oracle BPEL Process Manager Transaction Semantics
12.1.1.1
BPELCaller Calls BPELCallee That Has bpel.config.transaction Set to requiresNew
12.1.1.2
BPELCaller Calls BPELCallee That Has bpel.config.transaction Set to required
12.2
Introduction to Execution of One-way Invocations
13
Incorporating Java and Java EE Code in a BPEL Process
13.1
Introduction to Java and Java EE Code in BPEL Processes
13.2
Incorporating Java and Java EE Code in BPEL Processes
13.2.1
How to Wrap Java Code as a SOAP Service
13.2.2
What You May Need to Know About Wrapping Java Code as a SOAP Service
13.2.3
How to Embed Java Code Snippets into a BPEL Process with the bpelx:exec Tag
13.2.4
How to Use an XML Facade to Simplify DOM Manipulation
13.2.5
How to Use bpelx:exec Built-in Methods
13.2.6
How to Use Java Code Wrapped in a Service Interface
13.3
Adding Custom Classes and JAR Files
13.3.1
How to Add Custom Classes and JAR Files
13.4
Using Java Embedding in a BPEL Process in Oracle JDeveloper
13.4.1
How To Use Java Embedding in a BPEL Process in Oracle JDeveloper
13.5
Embedding Service Data Objects with bpelx:exec
14
Using Events and Timeouts in BPEL Processes
14.1
Introduction to Event and Timeout Concepts
14.2
Creating a Pick Activity to Select Between Continuing a Process or Waiting
14.2.1
How To Create a Pick Activity
14.2.2
What Happens When You Create a Pick Activity
14.3
Creating a Wait Activity to Set an Expiration Time
14.3.1
How To Specify the Minimum Wait Time
14.3.2
How to Create a Wait Activity
14.3.3
What Happens When You Create a Wait Activity
14.4
Setting Timeouts for Synchronous Processes
15
Coordinating Master and Detail Processes
15.1
Introduction to Master and Detail Process Coordinations
15.1.1
BPEL File Definition for the Master Process
15.1.1.1
Correlating a Master Process with Multiple Detail Processes
15.1.2
BPEL File Definition for Detail Processes
15.2
Defining Master and Detail Process Coordination in Oracle JDeveloper
15.2.1
How to Create a Master Process
15.2.2
How to Create a Detail Process
15.2.3
How to Create an Invoke Activity
16
Customizing SOA Composite Applications
16.1
Introduction to Customizing SOA Composite Applications
16.1.1
How To Create the Customizable Composite
16.1.2
How To Customize the Vertical Application
16.1.3
How to Customize the Customer Version
16.1.4
How to Upgrade the Composite
16.1.4.1
Core Application Team
16.1.4.2
The Vertical Application Team
16.1.4.3
The Customer
17
Using the Notification Service
17.1
Introduction to the Notification Service
17.2
Introduction to Notification Channel Setup
17.3
Selecting Notification Channels During BPEL Process Design
17.3.1
How To Configure the Email Notification Channel
17.3.1.1
Setting Email Attachments
17.3.1.2
Formatting the Body of an Email Message as HTML
17.3.2
How to Configure the IM Notification Channel
17.3.3
How to Configure the SMS Notification Channel
17.3.4
How to Configure the Voice Notification Channel
17.3.5
How to Select Email Addresses and Telephone Numbers Dynamically
17.3.6
How to Select Notification Recipients by Browsing the User Directory
17.4
Allowing the End User to Select Notification Channels
17.4.1
How to Allow the End User to Select Notification Channels
17.4.1.1
How to Create and Send Headers for Notifications
18
Using Oracle BPEL Process Manager Sensors
18.1
Introduction to Sensors
18.2
Configuring Sensors and Sensor Actions in Oracle JDeveloper
18.2.1
How to Configure Sensors
18.2.2
How to Configure Sensor Actions
18.2.3
How to Publish to Remote Topics and Queues
18.2.4
How to Create a Custom Data Publisher
18.2.5
How to Register the Sensors and Sensor Actions in composite.xml
18.3
Viewing Sensors and Sensor Action Definitions in Oracle Enterprise Manager Fusion Middleware Control Console
Part III Using the Oracle Mediator Service Component
19
Getting Started with Oracle Mediator
19.1
Introduction to Oracle Mediator
19.2
Overview of Mediator Editor Environment
19.3
Creating a Mediator
19.3.1
Creating a Mediator Without Interface Definition
19.3.1.1
How to Create a Mediator with No Interface Definition
19.3.1.2
How to Define an Interface for a Mediator with no Interface Definition
19.3.2
Creating a Mediator Based on a WSDL File
19.3.2.1
How to Create a Mediator Based on a WSDL File
19.3.3
Creating a Mediator with One-Way Interface Definition
19.3.3.1
How to Create a Mediator with One-Way Interface Definition
19.3.3.2
What Happens When You Create a Mediator Component with One-Way Interface Definition
19.3.4
Creating a Mediator with Synchronous Interface Definition
19.3.4.1
How to Create a Mediator with Synchronous Interface Definition
19.3.4.2
What Happens When You Create a Mediator Component with Synchronous Interface Definition
19.3.5
Creating a Mediator with Asynchronous Interface Definition
19.3.5.1
How to Create a Mediator with Asynchronous Interface Definition
19.3.5.2
What Happens When You Create a Mediator Component with Asynchronous Interface Definition
19.3.6
Creating a Mediator Component for Event Subscription
19.3.6.1
How to Create a Mediator for Event Subscription
19.3.6.2
What Happens When You Create a Mediator Component for Event Subscription
19.3.7
What You May Need to Know About the Information Available in Mediator User Interface
19.3.7.1
Mediator Definition
19.3.7.2
Routing Rule
19.4
Generating a WSDL File
19.5
Specifying Operation or Event Subscription Properties
19.6
Modifying a Mediator Component
19.6.1
Modifying Operations
19.6.2
Modifying Event Subscriptions
20
Creating Mediator Routing Rules
20.1
Introduction to Routing Rules
20.2
Defining Routing Rules
20.2.1
Using the Routing Rules Panel
20.2.2
Creating Static Routing Rules
20.2.2.1
Specifying Mediator Services or Events
20.2.2.2
Specifying Sequential or Parallel Execution
20.2.2.3
Handling Response Messages
20.2.2.4
Handling Multiple Callbacks
20.2.2.5
Handling Faults
20.2.2.6
Specifying Expression for Filtering Messages
20.2.2.7
Creating Transformations
20.2.2.8
Assigning Values
20.2.2.9
Access Headers for Filters and Assignments
20.2.2.10
Using Semantic Validation
20.2.2.11
Support for Java Callouts
20.2.3
Creating Dynamic Routing Rules
20.3
Creating a Mediator for Routing Messages
20.3.1
Step-By-Step Instructions for Creating the CustomerRouter Use Case
20.3.1.1
Task 1: Creating an Oracle JDeveloper Application and Project
20.3.1.2
Creating CustomerRouter Mediator Component
20.3.1.3
Creating a File Adapter Service
20.3.1.4
Creating a File adapter reference
20.3.1.5
Specifying Routing Rules
20.3.1.6
Creating Oracle Application Server Connection
20.3.1.7
Deploying CustomerRouterProject
20.3.2
Running and Monitoring the CustomerRouterProject Application
20.4
Creating Asynchronous Request Response Using Mediator
20.4.1
Step-By-Step Instructions for Creating the AsyncMediator Use Case
20.4.1.1
Task 1: Creating an Oracle JDeveloper Application and Project
20.4.1.2
Task 2: Creating a Server BPEL Process
20.4.1.3
Task 3: Create a Mediator Component
20.4.1.4
Task 4: Creating a Client BPEL Process
20.4.1.5
Task 5: Creating the Invoke, Receive, and Assignment Activities
20.4.1.6
Task 6: Configuring Oracle Application Server Connection
20.4.1.7
Task 7: Deploying the Composite Application
21
Working with Multiple Part Messages in Mediator
21.1
Introduction to Mediator Multipart Message Support Feature
21.1.1
Working with Multipart Request Messages
21.1.1.1
Specifying Filter Expressions
21.1.1.2
Adding Validations
21.1.1.3
Creating Transformations
21.1.1.4
Assigning Values
21.1.2
Working with Multipart Reply, Fault, and Callback Source Messages
21.1.3
Working with Multipart Target Messages
22
Using Mediator Error Handling
22.1
Introduction to Oracle Mediator Error Handling
22.1.1
Fault Policies
22.1.1.1
Conditions
22.1.1.2
Actions
22.1.2
Fault Bindings
22.1.3
Error groups in Mediator
22.2
Using Error Handling with Mediator
22.2.1
How to Use Error Handling for a Mediator Component
22.2.2
What Happens at Runtime
22.3
Fault Recovery Using Enterprise Manager
22.4
Error Handling XML Schema Definition Files
22.4.1
Schema Definition File for Fault-policies.xml
22.4.2
Schema Definition File for Fault-bindings.xml
23
Understanding Message Exchange Patterns of a Mediator
23.1
Understanding One-way Message Exchange Pattern
23.2
Understanding Request-Reply Message Exchange Pattern
23.3
Understanding Request-Reply-Fault Message Exchange Pattern
23.4
Understanding Request-Callback Message Exchange Pattern
23.5
Understanding Request-Reply-Callback Message Exchange Pattern
23.6
Understanding Request-Reply-Fault-Callback Message Exchange Pattern
Part IV Using the Business Rules Service Component
24
Getting Started with Oracle Business Rules
24.1
Introduction to the Business Rule Service Component
24.1.1
Integrating BPEL Processes, Business Rules, and Human Tasks
24.2
Overview of Rules Designer Editor Environment
24.2.1
Application Navigator
24.2.2
Rules Designer Window
24.2.3
Structure Window
24.2.4
Business Rule Validation Log Window
24.3
Introduction to Creating and Editing Business Rules
24.3.1
How to Create Business Rules Components
24.3.2
Introduction to Working with Business Rules in Rules Designer
24.4
Adding Business Rules to a BPEL Process
24.4.1
How to Add Business Rules to a BPEL Process
24.4.2
What Happens When You Add Business Rules to a BPEL Process
24.4.3
What Happens When You Create a Business Rules Dictionary
24.4.4
What You Need to Know About Invoking Business Rules in a BPEL Process
24.4.5
What You Need to Know About Decision Component Stateful Operation
24.5
Adding Business Rules to a SOA Composite Application
24.5.1
How to Add Business Rules to a SOA Composite Application
24.5.2
How to Select and Modify a Decision Function in a Business Rule Component
24.6
Running Business Rules in a Composite Application
24.7
Using Business Rules with Oracle ADF Business Components Fact Types
Part V Using the Human Workflow Service Component
25
Getting Started with Human Workflow
25.1
Introduction to Human Workflow
25.2
Introduction to Human Workflow Concepts
25.2.1
Introduction to Design and Runtime Concepts
25.2.1.1
Task Assignment and Routing
25.2.1.2
Static, Dynamic, and Rule-Based Task Assignment
25.2.1.3
Task Stakeholders
25.2.1.4
Task Deadlines
25.2.1.5
Notifications
25.2.1.6
Task Forms
25.2.1.7
Advanced Concepts
25.2.1.8
Reports and Audit Trails
25.2.2
Introduction to the Stages of Human Workflow Design
25.3
Introduction to Human Workflow Features
25.3.1
Human Workflow Use Cases
25.3.1.1
Task Assignment to a User or Role
25.3.1.2
Use of the Various Participant Types
25.3.1.3
Escalation, Expiration, and Delegation
25.3.1.4
Automatic Assignment and Delegation
25.3.1.5
Dynamic Assignment of Users Based on Task Content
25.3.2
Designing a Human Task from Start to Finish
25.3.2.1
Prerequisites
25.3.2.2
How to Create the Vacation Request Process
25.3.3
Additional Tutorials
25.4
Introduction to Human Workflow Architecture
25.4.1
Human Workflow Services
25.4.2
Use of Human Task
25.4.3
Service Engines
26
Designing Human Tasks
26.1
Introduction to Human Task Design Concepts
26.2
Introduction to the Modeling Process
26.2.1
Create a Human Task Definition
26.2.2
Associate the Human Task Definition with a BPEL Process
26.2.3
Generate the Task Form
26.3
Creating the Human Task Definition with the Human Task Editor
26.3.1
How to Create a Human Task Service Component
26.3.2
What Happens When You Create a Human Task Service Component
26.3.3
How to Access the Sections of the Human Task Editor
26.3.4
How to Specify the Title, Description, Outcome, Priority, Category, Owner, and Application Context
26.3.4.1
Specifying a Task Title
26.3.4.2
Specifying a Task Description
26.3.4.3
Specifying a Task Outcome
26.3.4.4
Specifying a Task Priority
26.3.4.5
Specifying a Task Category
26.3.4.6
Specifying a Task Owner
26.3.4.7
Specifying an Application Context
26.3.5
How to Specify the Task Payload Data Structure
26.3.6
How to Assign Task Participants
26.3.6.1
Configuring the Single Participant Type
26.3.6.2
Configuring the Parallel Participant Type
26.3.6.3
Configuring the Serial Participant Type
26.3.6.4
Configuring the FYI Participant Type
26.3.7
How to Select a Routing Policy
26.3.7.1
Routing Tasks to All Participants in the Specified Order
26.3.7.2
Specifying Advanced Task Routing Using Business Rules
26.3.7.3
Using External Routing
26.3.7.4
Configuring the Error Assignee
26.3.8
How to Specify Multilingual Settings and Style Sheets
26.3.8.1
Specifying WordML and Other Style Sheets for Attachments
26.3.8.2
Specifying Multilingual Settings
26.3.9
How to Escalate, Renew, or End the Task
26.3.9.1
Introduction to Escalation and Expiration Policy
26.3.9.2
Specifying a Policy to Never Expire
26.3.9.3
Specifying a Policy to Expire
26.3.9.4
Extending an Expiration Policy Period
26.3.9.5
Escalating a Task Policy
26.3.9.6
Specifying Escalation Rules
26.3.9.7
Specifying a Due Date
26.3.10
How to Specify Participant Notification Preferences
26.3.10.1
Notifying Recipients of Changes to Task Status
26.3.10.2
Editing the Notification Message
26.3.10.3
Setting Up Reminders
26.3.10.4
Changing the Character Set Encoding
26.3.10.5
Securing Notifications to Exclude Details
26.3.10.6
Making Email Messages Actionable
26.3.10.7
Sending Task Attachments with Email Notifications
26.3.11
How to Specify Access Policies and Task Actions on Task Content
26.3.11.1
Specifying Access Policies on Task Content
26.3.12
How to Specify a Workflow Digital Signature Policy
26.3.12.1
Specifying a Certificate Authority
26.3.13
How to Specify Restrictions on Task Assignments
26.3.14
How to Specify Java or Business Event Callbacks
26.3.14.1
Specifying Callback Classes on Task Status
26.3.15
How to Specify Task and Routing Customizations in BPEL Callbacks
26.3.16
How to Exit the Human Task Editor and Save Your Changes
26.4
Associating the Human Task Service Component with a BPEL Process
26.4.1
How to Associate a Human Task with a BPEL Process
26.4.2
What You May Need to Know About Deleting a Wire Between a Human Task Service Component and a BPEL Process
26.4.3
How to Define the Human Task Activity Title, Initiator, Priority, and Parameter Variables
26.4.3.1
Specifying the Task Title
26.4.3.2
Specifying the Task Initiator and Task Priority
26.4.3.3
Specifying Task Parameters
26.4.4
How to Define the Human Task Activity Advanced Features
26.4.4.1
Specifying a Scope Name and a Global Task Variable Name
26.4.4.2
Specifying a Task Owner
26.4.4.3
Specifying an Identification Key
26.4.4.4
Specifying an Identity Context
26.4.4.5
Specifying an Application Context
26.4.4.6
Including the Task History of Other Human Tasks
26.4.5
How to View the Generated Human Task Activity
26.4.5.1
Invoking BPEL Callbacks
26.4.6
What You May Need to Know About Changing the Generated Human Task Activity
26.4.7
What You May Need to Know About Deleting a Partner Link Generated by a Human Task
26.4.8
How to Define Outcome-Based Modeling
26.4.8.1
Specifying Payload Updates
26.4.8.2
Using Case Statements for Other Task Conclusions
27
Designing Task Forms for Human Tasks
27.1
Introduction to the Task Form
27.1.1
What You May Need to Know About Task Forms: Time Zone Conversion
27.2
Associating the Task Flow with the Task Service
27.3
Creating an ADF Task Flow Based on a Human Task
27.3.1
How To Create an ADF Task Flow from the Human Task Editor
27.3.2
How To Create an ADF Task Flow Based on a Human Task
27.3.3
What Happens When You Create an ADF Task Flow Based on a Human Task
27.4
Creating a Task Form
27.4.1
How To Create an Autogenerated Task Form
27.4.2
How To Create a Custom Task Form Using the Task Form Wizard
27.4.3
How To Create a Task Form Using the Complete Task with Payload Drop Handler
27.4.4
How To Create Task Form Regions Using Individual Drop Handlers
27.4.5
How To Add the Payload to the Task Form
27.4.6
What Happens When You Create a Task Form
27.5
Refreshing Data Controls When the Task XSD Changes
27.6
Securing the Task Flow Application
27.7
Creating an Email Notification
27.7.1
How To Create an Email Notification
27.7.1.1
Creating a Task Flow with a Router
27.7.1.2
Creating an Email Notification Page
27.7.2
What Happens When You Create an Email Notification Page
27.7.3
What You May Need to Know About Creating an Email Notification Page
27.8
Deploying a Composite Application with a Task Flow
27.8.1
Before Deploying the Task Form: Port Changes
27.8.2
How To Deploy a Composite Application with a Task Flow
27.8.3
How To Redeploy the Task Form
27.8.4
How To Deploy a Task Flow as a Separate Application
27.8.5
How To Deploy a Task Form to a non-SOA Oracle WebLogic Server
27.8.5.1
Deploying oracle.soa.workflow.jar to a non-SOA Oracle WebLogic Server
27.8.5.2
Defining the Foreign JNDI Provider on a non-SOA Oracle WebLogic Server
27.8.5.3
Defining the Foreign JNDI Provider Links on a non-SOA Oracle WebLogic Server
27.8.5.4
Including a Grant for bpm-services.jar
27.8.5.5
Deploying the Application
27.8.6
What Happens When You Deploy the Task Form
27.9
Displaying a Task Form in the Worklist
27.9.1
How To Display the Task Form in the Worklist
27.10
Displaying a Task in an Email Notification
27.11
Reusing the Task Flow Application with Multiple Human Tasks
27.11.1
How To Reuse the Task Flow Application with Multiple Human Tasks
28
Using Oracle BPM Worklist
28.1
Introduction to Oracle BPM Worklist
28.1.1
What You May Need To Know About Oracle BPM Worklist
28.2
Logging In to Oracle BPM Worklist
28.2.1
How To Log In to the Worklist
28.2.1.1
Enabling the weblogic User for Logging in to the Worklist
28.2.2
What Happens When You Log In to the Worklist
28.2.3
What Happens When You Change a User's Privileges While They are Logged in to Oracle BPM Worklist
28.3
Customizing the Task List Page
28.3.1
How To Filter Tasks
28.3.2
How To Create and Customize Worklist Views
28.3.3
How To Customize the Task Status Chart
28.3.4
How To Create a ToDo Task
28.3.5
How To Create a Subtask
28.4
Acting on Tasks: The Task Details Page
28.4.1
System Actions
28.4.2
Task History
28.4.3
How To Act on Tasks
28.4.4
How To Act on Tasks That Require a Digital Signature
28.5
Approving Tasks
28.6
Setting a Vacation Period
28.7
Setting Rules
28.7.1
How To Create User Rules
28.7.2
How To Create Group Rules
28.7.3
Assignment Rules for Tasks with Multiple Assignees
28.8
Using the Worklist Administration Functions
28.8.1
How To Manage Other Users' or Groups' Rules (as an Administrator)
28.8.2
How To Set the Worklist Display (Application Preferences)
28.9
Specifying Notification Settings
28.9.1
Messaging Filter Rules
28.9.1.1
Data Types
28.9.1.2
Attributes
28.9.2
Rule Actions
28.9.3
Managing Messaging Channels
28.9.3.1
Viewing Your Messaging Channels
28.9.3.2
Creating, Editing, and Deleting a Messaging Channel
28.9.4
Managing Messaging Filters
28.9.4.1
Viewing Messaging Filters
28.9.4.2
Creating Messaging Filters
28.9.4.3
Editing a Messaging Filter
28.9.4.4
Deleting a Messaging Filter
28.10
Using Flex Fields
28.10.1
How To Map Flex Fields
28.11
Creating Worklist Reports
28.11.1
How To Create Reports
28.11.2
What Happens When You Create Reports
28.11.2.1
Unattended Tasks Report
28.11.2.2
Tasks Priority Report
28.11.2.3
Tasks Cycle Time Report
28.11.2.4
Tasks Productivity Report
28.12
Accessing Oracle BPM Worklist in Local Languages
28.12.1
How To Change the Language Used in the Worklist
28.12.2
What You May Need to About Runtime Languages Not Displaying in the Worklist
28.12.3
What You May Need to Know About Inconsistent Display Languages in Worklist and Embedded User's Notification Preference Interface
28.12.4
How To Change the Time Zone Used in the Worklist
29
Building a Custom Worklist Client
29.1
Introduction to Building Clients for Workflow Services
29.2
Packages and Classes for Building Clients
29.3
Workflow Service Clients
29.3.1
The IWorkflowServiceClient Interface
29.4
Class Paths for Clients Using SOAP
29.5
Class Paths for Clients Using Remote EJBs
29.6
Class Paths for Clients Using Local EJBs
29.7
Enterprise JavaBeans References in Web Applications
29.8
Initiating a Task
29.8.1
Creating a Task
29.8.2
Creating a Payload Element in a Task
29.8.3
Initiating a Task Programmatically
29.9
Changing Workflow Standard View Definitions
29.10
Writing a Worklist Application Using the HelpDeskUI Sample
30
Introduction to Human Workflow Services
30.1
Introduction to Human Workflow Services
30.1.1
Enterprise JavaBeans, SOAP, and Java Support for the Human Workflow Services
30.1.2
Security Model for Services
30.1.2.1
Limitation on Propagating Identity to Workflow Services when Using SOAP Web Services
30.1.2.2
Creating Human Workflow Context on Behalf of a User
30.1.3
Task Service
30.1.4
Task Query Service
30.1.5
Identity Service
30.1.5.1
Identity Service Providers
30.1.6
Task Metadata Service
30.1.7
User Metadata Service
30.1.8
Task Report Service
30.1.9
Runtime Config Service
30.1.9.1
Internationalization of Attribute Labels
30.1.10
Evidence Store Service and Digital Signatures
30.1.10.1
Prerequisites
30.1.10.2
Interfaces and Methods
30.1.11
Task Instance Attributes
30.2
Notifications from Human Workflow
30.2.1
Contents of Notification
30.2.2
Error Message Support
30.2.3
Reliability Support
30.2.4
Management of Oracle Human Workflow Notification Service
30.2.5
How to Configure the Notification Channel Preferences
30.2.6
How to Configure Notification Messages in Different Languages
30.2.7
How to Send Actionable Messages
30.2.7.1
How to Send Actionable Emails for Human Tasks
30.2.8
How to Send Inbound and Outbound Attachments
30.2.9
How to Send Inbound Comments
30.2.10
How to Send Secure Notifications
30.2.11
How to Set Channels Used for Notifications
30.2.12
How to Send Reminders
30.2.13
How to Set Automatic Replies to Unprocessed Messages
30.2.14
How to Create Custom Notification Headers
30.3
Assignment Service Configuration
30.3.1
Dynamic Assignment and Task Escalation Functions
30.3.1.1
How to Implement a Dynamic Assignment Function
30.3.1.2
How to Configure Dynamic Assignment Functions
30.3.1.3
How to Configure Display Names for Dynamic Assignment Functions
30.3.1.4
How to Implement a Task Escalation Function
30.3.2
Dynamically Assigning Task Participants with the Assignment Service
30.3.2.1
How to Implement an Assignment Service
30.3.2.2
Example of Assignment Service Implementation
30.3.2.3
How to Deploy a Custom Assignment Service
30.3.3
Custom Escalation Function
30.4
Class Loading for Callbacks and Resource Bundles
30.5
Resource Bundles in Workflow Services
30.5.1
Task Resource Bundles
30.5.2
Global Resource Bundle – WorkflowLabels.properties
30.5.3
Worklist Client Resource Bundles
30.5.4
Task Detail ADF Task Flow Resource Bundles
30.5.5
Case Sensitivity
30.6
Introduction to Human Workflow Client Integration with Oracle WebLogic Server Services
30.6.1
Human Workflow Services Clients
30.6.1.1
Task Query Service Client Code
30.6.1.2
Configuration Option
30.6.1.3
Client Logging
30.6.1.4
Configuration Migration Utility
30.6.2
Identity Propagation
30.6.2.1
Enterprise JavaBeans Identity Propagation
30.6.2.2
SAML Token Identity Propagation for SOAP Client
30.6.3
Client JAR Files
30.7
Database Views for Oracle Workflow
30.7.1
Unattended Tasks Report View
30.7.2
Task Cycle Time Report View
30.7.3
Task Productivity Report View
30.7.4
Task Priority Report View
31
Integrating Microsoft Excel with a Human Task
31.1
Configuring Your Environment for Invoking a BPEL Process from an Excel Workbook
31.1.1
How to Create an JDeveloper Project of the Type Web Service Data Control
31.1.2
How to Create a Dummy JSF Page
31.1.3
How to Add Desktop Integration to Your Oracle JDeveloper Project
31.1.4
What Happens When You Add Desktop Integration to Your JDeveloper Project
31.1.5
How to Deploy the Web Application You Created in Step 1
31.1.6
How to Install Microsoft Excel
31.1.7
How to Install the Oracle ADF-Desktop Integration Plug-in
31.1.8
How to Specify the User Interface Controls and Create the Excel Workbook
31.2
Attaching Excel Workbooks to Human Task Workflow Email Notifications
31.2.1
Enabling Attachment of Excel Workbooks to Human Task Workflow Email Notifications
31.2.2
What Happens During Runtime When You Enable Attachment of Excel Workbooks to Human Task Workflow Email Notifications
31.2.3
Example: Attaching an Excel Workbook to Email Notifications
31.2.3.1
Task 1: Enable the ADF Task Flow Project with Oracle ADF-DI Capabilities
31.2.3.2
Task 2: Set up Authentication
31.2.3.3
Task 3: Create a Valid Page Definition File to Be Used in the Excel Workbook
31.2.3.4
Task 4: Prepare the Excel Workbook
31.2.3.5
Task 5: Deploy the ADF Task Flow
31.2.3.6
Task 6: Test the Deployed Application
32
Configuring Task List Portlets
32.1
Introduction to Task List Portlets
32.2
Deploying the Task List Portlet Producer Application to a Portlet Server
32.2.1
Deployment Prerequisites
32.2.2
How to Deploy the Task List Portlet Producer Application
32.2.3
How to Connect the Task List Producer to the Remote SOA Server
32.2.3.1
How to Define the Foreign JNDI on the Oracle WebCenter Oracle WebLogic Server
32.2.3.2
How to Configure EJB Identity Propagation
32.2.3.3
How to Configure the Identity Store
32.2.4
How to Secure the Task List Portlet Producer Application Using Web Services Security
32.2.5
How to Specify the Inbound Security Policy
32.3
Creating a Portlet Consumer Application for Embedding the Task List Portlet
32.3.1
How To Create a Portlet Consumer Application for Embedding the Task List Portlet
32.4
Passing Worklist Portlet Parameters
32.4.1
Assignment Filter Constraints
32.4.2
Example of File Containing All Column Constants
Part VI Using Binding Components
33
Getting Started with Binding Components
33.1
Introduction to Binding Components
33.1.1
Web Services
33.1.2
JCA Adapters
33.1.2.1
AQ Adapter
33.1.2.2
Database Adapter
33.1.2.3
File Adapter
33.1.2.4
FTP Adapter
33.1.2.5
JMS Adapter
33.1.2.6
MQ Adapter
33.1.2.7
Oracle Applications Adapter
33.1.2.8
Socket Adapter
33.1.2.9
Third Party Adapter
33.1.3
Oracle BAM
33.1.4
Oracle B2B
33.1.5
ADF-BC Services
33.1.6
EJB Services
33.1.7
Direct Binding Services
33.2
Introduction to Integrating a Binding Component in a SOA Composite Application
33.2.1
How to Integrate a Binding Component in a SOA Composite Application
34
Using Service Data Objects and Enterprise JavaBeans
34.1
Introduction to SDO and Enterprise JavaBeans Binding
34.2
Designing an Enterprise JavaBeans Application
34.2.1
How to Create SDO Objects Using the SDO Compiler
34.2.2
How to Create a Session Bean and Import the SDO Objects
34.2.3
How to Create a Profile and an EAR File
34.2.4
How to Define the SDO Types with an Enterprise JavaBeans Bean
34.2.5
How to Use Web Service Annotations
34.2.6
How to Deploy the Enterprise JavaBeans EAR File
34.3
Creating an Enterprise JavaBeans Adapter Service in Oracle JDeveloper
34.3.1
Invoking SDO-based Enterprise JavaBeans from SOA Composite Applications
34.3.1.1
How to Invoke SDO-based Enterprise JavaBeans from SOA Composite Applications
34.3.2
Invoking SOA Composite Applications from Enterprise JavaBeans Using SDO Parameters
34.3.2.1
How to Invoke SOA Composite Applications from Enterprise JavaBeans using SDO Parameters
34.4
Designing an Enterprise JavaBeans Client to Invoke Oracle SOA Suite
34.5
Specifying Enterprise JavaBeans Roles
34.6
Configuring JNDI Access
34.6.1
How to Create a Foreign JNDI
34.6.2
How to Create a Custom CSF Map for JNDI Lookup
Part VII Sharing Functionality Across Service Components
35
Creating Transformations with the XSLT Mapper
35.1
Introduction to the XSLT Mapper
35.1.1
Overview of XSLT Creation
35.1.2
Guidelines for Using the XSLT Mapper
35.2
Creating an XSL Map File
35.2.1
How to Create an XSL Map File in Oracle BPEL Process Manager
35.2.2
How to Create an XSL Map File from Imported Source and Target Schema Files in Oracle BPEL Process Manager
35.2.3
How to Create an XSL Map File in Oracle Mediator
35.2.4
What You May Need to Know About Creating an XSL Map File
35.2.5
What Happens at Runtime If You Pass a Payload Through Oracle Mediator Without Creating an XSL Map File
35.2.6
What Happens If You Receive an Empty Namespace Tag in an Output Message
35.3
Designing Transformation Maps with the XSLT Mapper
35.3.1
How to Add Additional Sources
35.3.2
How to Perform a Simple Copy by Linking Nodes
35.3.3
How to Set Constant Values
35.3.4
How to Add Functions
35.3.4.1
Editing Function Parameters
35.3.4.2
Chaining Functions
35.3.4.3
Using Named Templates
35.3.4.4
Importing User-Defined Functions
35.3.5
How to Edit XPath Expressions
35.3.6
How to Add XSLT Constructs
35.3.6.1
Using Conditional Processing with xsl:if
35.3.6.2
Using Conditional Processing with xsl:choose
35.3.6.3
Creating Loops with xsl:for-each
35.3.6.4
Cloning xsl:for-each
35.3.6.5
Applying xsl:sort to xsl:for-each
35.3.6.6
Copying Nodes with xsl:copy-of
35.3.6.7
Including External Templates with xsl:include
35.3.7
How to Automatically Map Nodes
35.3.7.1
Using Auto Mapping with Confirmation
35.3.8
What You May Need to Know About Automatic Mapping
35.3.9
How to View Unmapped Target Nodes
35.3.10
How to Generate Dictionaries
35.3.11
How to Create Map Parameters and Variables
35.3.11.1
Creating a Map Parameter
35.3.11.2
Creating a Map Variable
35.3.12
How to Search Source and Target Nodes
35.3.13
How to Control the Generation of Unmapped Target Elements
35.3.14
How to Ignore Elements in the XSLT Document
35.3.15
How to Replace a Schema in the XSLT Mapper
35.3.16
How to Substitute Elements and Types in the Source and Target Trees
35.4
Testing the Map
35.4.1
How to Test the Transformation Mapping Logic
35.4.2
How to Generate Reports
35.4.2.1
Correcting Memory Errors When Generating Reports
35.4.3
How to Customize Sample XML Generation
35.5
Demonstrating the New Features of the XSLT Mapper
35.5.1
Opening the Application
35.5.2
Creating a New XSLT Map in the BPEL Process
35.5.3
Using Type Substitution to Map the Purchase Order Items
35.5.4
Referencing Additional Source Elements
35.5.5
Using Element Substitution to Map the Shipping Address
35.5.6
Mapping the Remaining Fields
35.5.7
Testing the Map
36
Using Business Events and the Event Delivery Network
36.1
Introduction to Business Events
36.1.1
Local and Remote Events Boundaries
36.2
Creating Business Events in Oracle JDeveloper
36.2.1
How to Create a Business Event
36.3
Subscribing to a Business Event or Publishing a Business Event from a Mediator Component
36.3.1
How to Subscribe to a Business Event
36.3.2
What Happens When You Create and Subscribe to a Business Event
36.3.3
What You May Need to Know About Subscribing to a Business Event
36.3.4
How to Publish a Business Event
36.3.5
What Happens When You Publish a Business Event
36.4
Subscribing to a Business Event or Publishing a Business Event from a BPEL Process Service Component
36.4.1
How to Subscribe to a Business Event
36.4.2
How to Publish a Business Event
36.4.3
What Happens When You Subscribe to and Publish a Business Event
36.5
What You May Need to Know About Subscribing to a Business Event
36.6
How to Integrate Oracle ADF Business Component Business Events with Oracle Mediator
Part VIII Completing Your Application
37
Enabling Security with Policies
37.1
Introduction to Policies
37.2
Attaching Policies to Binding Components and Service Components
37.2.1
How to Attach Policies to Binding Components and Service Components
37.2.2
How to Override Policy Configuration Property Values
37.2.2.1
Overriding Client Configuration Property Values
37.2.2.2
Overriding Server Configuration Property Values
38
Deploying SOA Composite Applications
38.1
Introduction to Deployment
38.2
Deployment Prerequisites
38.2.1
Creating the Oracle SOA Suite Schema
38.2.2
Creating a SOA Domain
38.2.3
Configuring a SOA Cluster
38.3
Understanding the Packaging Impact
38.4
Anatomy of a Composite
38.5
Preparing the Target Environment
38.5.1
Creating Data Sources and Queues
38.5.1.1
Script for Creation of JMS Resource and Redeployment of JMS Adapter
38.5.1.2
Script for Creation of the Database Resource and Redeployment of the Database Adapter
38.5.2
Creating Connection Factories and Connection Pooling
38.5.3
Enabling Security
38.5.4
Deploying Trading Partner Agreements and Task Flows
38.5.5
Creating an Application Server Connection
38.5.6
Creating a SOA-MDS Connection
38.6
Customizing Your Application for the Target Environment Prior to Deployment
38.6.1
Customizing SOA Composite Applications for the Target Environment
38.6.1.1
Introduction to Configuration Plans
38.6.1.2
Introduction to a Configuration Plan File
38.6.1.3
Introduction to Use Cases for a Configuration Plan
38.6.1.4
How to Create a Configuration Plan in Oracle JDeveloper
38.6.1.5
How to Create a Configuration Plan with the WLST Utility
38.6.1.6
How to Attach a Configuration Plan with ant Scripts
38.7
Deploying SOA Composite Applications
38.7.1
Deploying a Single SOA Composite in Oracle JDeveloper
38.7.1.1
How to Deploy a Single SOA Composite
38.7.2
Deploying Multiple SOA Composite Applications in Oracle JDeveloper
38.7.2.1
How to Deploy Multiple SOA Composite Applications
38.7.3
Deploying and Using Shared Metadata Across SOA Composite Applications in Oracle JDeveloper
38.7.3.1
How to Deploy Shared Metadata
38.7.3.2
How to Use Shared Metadata
38.7.4
Deploying an Existing SOA Archive in Oracle JDeveloper
38.7.4.1
How to Deploy an Existing SOA Archive from Oracle JDeveloper
38.7.5
Managing SOA Composite Applications with Scripts
38.7.5.1
How to Manage SOA Composite Applications with the WLST Utility
38.7.5.2
How to Manage SOA Composite Applications with ant Scripts
38.7.6
Deploying SOA Composite Applications from Oracle Enterprise Manager Fusion Middleware Control Console
38.7.7
Deploying SOA Composite Applications to a Cluster
38.8
Postdeployment Configuration
38.8.1
Security
38.8.2
Updating Connections
38.8.3
Updating Data Sources and Queues
38.8.4
Attaching Policies
38.9
Testing and Troubleshooting
38.9.1
Verifying Deployment
38.9.2
Initiating an Instance of a Deployed Composite
38.9.3
Automating the Testing of Deployed Composites
38.9.4
Troubleshooting Common Deployment Errors
38.9.4.1
Common Oracle JDeveloper Deployment Issues
38.9.4.2
Common Configuration Plan Issues
38.9.4.3
Deploying to a Managed Oracle WebLogic Server
38.9.4.4
Deploying to a Two-Way, SSL-Enabled Oracle WebLogic Server
38.9.4.5
Deploying with an Unreachable Proxy Server
39
Automating Testing of SOA Composite Applications
39.1
Introduction to the Composite Test Framework
39.1.1
Test Cases Overview
39.1.2
Test Suites Overview
39.1.3
Emulations Overview
39.1.4
Assertions Overview
39.2
Introduction to the Components of a Test Suite
39.2.1
Process Initiation
39.2.2
Emulations
39.2.3
Assertions
39.2.4
Message Files
39.3
Creating Test Suites and Test Cases
39.3.1
How to Create Test Suites and Test Cases
39.4
Creating the Contents of Test Cases
39.4.1
How to Initiate Inbound Messages
39.4.2
How to Emulate Outbound Messages
39.4.3
How to Emulate Callback Messages
39.4.4
How to Emulate Fault Messages
39.4.5
How to Create Assertions
39.4.5.1
Creating Assertions on a Part Section, Nonleaf Element, or Entire XML Document
39.4.5.2
Creating Assertions on a Leaf Element
39.4.6
What You May Need to Know About Assertions
39.5
Deploying and Running a Test Suite
Part IX Advanced Topics
40
Processing Large Documents
40.1
Introduction to Processing Large Documents
40.2
Best Practices for Handling Large Documents
40.2.1
Setting Audit Levels from Oracle Enterprise Manager for Large Payload Processing
40.2.2
Using the Assign Activity in BPEL/Mediator
40.2.3
Using XSLT Transformations for Repeating Structures
40.2.4
Using Adapter Support for Streaming Large Payloads
40.2.5
Using Correct Settings for Large Payload Scenarios
40.2.6
Processing Large Documents in Oracle B2B
40.2.6.1
MDSInstance Cache Size
40.2.6.2
Protocol Message Size
40.2.6.3
Number of Threads
40.2.6.4
StuckThread Max Time
40.2.6.5
Tablespace
40.2.7
Setting the Default JTA Timeout in for Large Documents
40.2.8
Using Large Number of Activities in BPEL Processes (Without FlowN)
40.2.9
Using Large Number of Activities in BPEL Processes (With FlowN)
40.2.10
Boundary on the Processing of Large Numbers of Activities in a BPEL Process
40.2.11
Using a Flow With Multiple Sequences
40.2.12
Using a Flow with One Sequence
40.2.13
Using Flow with No Sequence
40.2.14
Large Numbers of Mediators in Composites
40.2.15
Using XSLT Transformations on Large Payloads (For BPEL and Mediator)
40.3
Limitations on Concurrent Processing of Large Documents
40.3.1
Opaque Schema for Processing Large Payloads
40.3.2
Streaming MTOM Attachments
40.3.3
Importing Large Data Sets in Oracle B2B
41
Working with Domain Value Maps
41.1
Introduction to Domain Value Maps
41.1.1
Domain Value Map Features
41.1.1.1
Qualifier Support
41.1.1.2
Qualifier Order Support
41.1.1.3
One-to-Many Mapping Support
41.2
Creating Domain Value Maps
41.2.1
How to Create Domain Value Maps
41.2.2
What Happens When You Create a Domain Value Map
41.3
Editing a Domain Value Map
41.3.1
Adding Columns to a Domain Value Map
41.3.2
Adding Rows to a Domain Value Map
41.4
Using Domain Value Map Functions
41.4.1
Understanding Domain Value Map Functions
41.4.1.1
dvm:lookupValue
41.4.1.2
dvm:lookupValue1M
41.4.2
Using Domain Value Map Functions in Transformation
41.4.3
Using Domain Value Map Functions in XPath Expressions
41.4.4
What Happens at Runtime
41.5
Creating a Domain Value Map Use Case for Hierarchical Lookup
41.5.1
Creating the HierarchicalValue Use Case
41.5.1.1
Task 1: Creating an Oracle JDeveloper Application and Project
41.5.1.2
Task 2: Creating a Domain Value Map
41.5.1.3
Task 3: Creating a File Adapter Service
41.5.1.4
Task 4: Creating ProcessOrders Mediator Component
41.5.1.5
Task 5: Creating a File Adapter Reference
41.5.1.6
Task 6: Specifying Routing Rules
41.5.1.7
Task 7: Configuring Oracle Application Server Connection
41.5.1.8
Task 8: Deploying the Composite Application
41.5.2
Running and Monitoring the HierarchicalValue Application
41.6
Creating a Domain Value Map Use Case For Multiple Values
41.6.1
Creating the Multivalue Use Case
41.6.1.1
Task 1: Creating an Oracle JDeveloper Application and Project
41.6.1.2
Task 2: Creating a Domain Value Map
41.6.1.3
Task 3: Creating a File Adapter Service
41.6.1.4
Task 4: Creating LookupMultiplevaluesMediator Mediator Component
41.6.1.5
Task 5: Creating a File Adapter Reference
41.6.1.6
Task 6: Specifying Routing Rules
41.6.1.7
Task 7: Configuring Oracle Application Server Connection
41.6.1.8
Task 8: Deploying the Composite Application
41.6.2
Running and Monitoring the Multivalue Application
42
Using SOA Composer with Domain Value Maps
42.1
Working with SOA Composer
42.2
Viewing DVMs at Runtime
42.3
Editing DVMs at Runtime
42.4
Saving DVMs at Runtime
42.5
Committing Changes at Runtime
42.6
Conflict Detection
43
Working with Cross References
43.1
Introduction to Cross References
43.2
Creating and Modifying Cross Reference Tables
43.2.1
Creating a Cross Reference Table
43.2.1.1
What Happens When You Create a Cross Reference
43.2.2
Adding an End System to a Cross Reference Table
43.3
Populating Cross Reference Tables
43.3.1
About xref:populateXRefRow Function
43.3.2
About xref:populateXRefRow1M Function
43.3.3
How to Populate a Column of a Cross Reference Table
43.4
Looking Up Cross Reference Tables
43.4.1
About xref:lookupXRef Function
43.4.2
About xref:lookupXRef1M Function
43.4.3
About xref:lookupPopulatedColumns Function
43.4.4
How to Look Up a Cross Reference Table for a Value
43.5
Deleting a Cross Reference Table Value
43.5.1
How to Delete a Cross Reference Table Value
43.6
Creating and Running Cross Reference Use Case
43.6.1
Step-By-Step Instructions for Creating the Use Case
43.6.1.1
Task 1: Configuring Oracle Database and Database Adapter
43.6.1.2
Task 2: Creating an Oracle JDeveloper Application and Project
43.6.1.3
Task 3: Creating a Cross Reference
43.6.1.4
Task 4: Creating a Database Adapter Service
43.6.1.5
Task 5: Creating EBS and SBL External References
43.6.1.6
Task 6: Creating Logger External Reference
43.6.1.7
Task 7: Creating Mediator Components
43.6.1.8
Task 8: Specifying Routing Rules for Mediator Component
43.6.1.9
Task 9: Specifying Routing Rules for Common Mediator
43.6.1.10
Task 10: Configuring Oracle Application Server Connection
43.6.1.11
Task 11: Deploying the Composite Application
43.6.2
Running and Monitoring the XrefCustApp Application
43.7
Creating and Running Cross Reference for 1M Functions
43.7.1
Step-By-Step Instructions for Creating the Use Case
43.7.1.1
Task 1: Configuring Oracle Database and Database Adapter
43.7.1.2
Task 2: Creating an Oracle JDeveloper Application and Project
43.7.1.3
Task 3: Creating a Cross Reference
43.7.1.4
Task 4: Creating a Database Adapter Service
43.7.1.5
Task 5: Creating EBS External Reference
43.7.1.6
Task 6: Creating Logger External Reference
43.7.1.7
Task 7: Creating Mediator Components
43.7.1.8
Task 8: Specifying Routing Rules for Mediator Component
43.7.1.9
Task 9: Specifying Routing Rules for Common Mediator
43.7.1.10
Task 10: Configuring Oracle Application Server Connection
43.7.1.11
Task 11: Deploying the Composite Application
44
Defining Composite Sensors
44.1
Introduction to Composite Sensors
44.1.1
Restrictions on Use of Composite Sensors
44.2
Adding Composite Sensors
44.2.1
How to Add Composite Sensors
44.2.2
Adding a Variable
44.2.3
Adding an Expression
44.2.4
Adding a Property
44.3
Monitoring Composite Sensor Data During Runtime
45
Using Two-Layer Business Process Management (BPM)
45.1
Introduction to Two-Layer Business Process Management
45.2
Phase Activities
45.2.1
Creating a Phase Activity
45.2.2
How to Create a Phase Activity
45.2.3
What Happens When You Create a Phase Activity
45.2.4
What Happens at Runtime When You Create a Phase Activity
45.2.5
What You May Need to Know About Creating a Phase Activity
45.3
The Dynamic Routing Decision Table
45.3.1
How to Create the Routing Decision Table
45.3.2
What Happens When You Create the Routing Decision Table
45.4
Use Case: Two-Layer BPM
45.4.1
Designing the SOA Composite
45.4.2
Creating a Phase Activity
45.4.3
Creating and Editing the Dynamic Routing Decision Table
45.4.4
Adding Assign Activities to the BPEL Process Model
45.4.5
Deploying and Testing the Sample
46
Using the Direct Binding Invocation API
46.1
Introduction to the Direct Binding Invocation API
46.1.1
Synchronous Direct Binding Invocation
46.1.2
Asynchronous Direct Binding Invocation
46.1.3
SOA Direct Address Syntax
46.1.4
SOA Transaction Propagation
46.2
Invoking a SOA Composite Application with the Invocation API
46.3
Samples Using the Invocation API
Part X Using Oracle Business Activity Monitoring
47
Integrating Oracle BAM with SOA Composite Applications
47.1
Introduction to Integrating Oracle BAM with SOA Composite Applications
47.2
Configuring Oracle BAM Adapter
47.3
Instrumenting BPEL Processes With Monitors
47.3.1
How to Access BPEL Designer Monitor View
47.3.2
How to Configure Activity Monitors
47.3.3
How To Create BPEL Process Monitoring Objects
47.3.4
How to Configure Counters
47.3.5
How to Configure Intervals
47.3.6
How to Configure Business Indicators
47.3.7
How to Add Existing Monitoring Objects to Activities
47.3.8
How To Configure BPEL Process Monitors for Deployment
47.3.9
What You Need To Know About the Oracle BAM Server Side
47.3.9.1
Understanding the COMPONENT Data Object
47.3.9.2
Understanding the COUNTER Data Object
47.3.9.3
Understanding the INTERVAL Data Object
47.3.9.4
Understanding Business Indicator Data Objects
47.3.9.5
Controlling Oracle BAM Data Object Size
47.4
Creating a Design Time Connection to an Oracle BAM Server
47.4.1
How to Create a Connection to an Oracle BAM Server
47.5
Using Oracle BAM Adapter in a SOA Composite Application
47.5.1
How to Use Oracle BAM Adapter in a SOA Composite Application
47.6
Using Oracle BAM Adapter in a BPEL Process
47.6.1
How to Use Oracle BAM Adapter in a BPEL Process
47.7
Integrating BPEL Sensors with Oracle BAM
47.7.1
How to Create a Sensor
47.7.2
How to Create an Oracle BAM Sensor Action
48
Using Oracle BAM Data Control
48.1
Introduction to Oracle BAM Data Control
48.2
Creating Projects That Can Use Oracle BAM Data Controls
48.3
Creating Oracle BAM Server Connections
48.3.1
How to Modify Oracle BAM Data Control Connections to Oracle BAM Servers
48.3.1.1
How to Associate a BAM Data Control with a New Oracle BAM Connection
48.4
Exposing Oracle BAM with Oracle ADF Data Controls
48.4.1
How to Create Oracle BAM Data Controls
48.4.2
What Happens in Your Project When You Create an Oracle BAM Data Control
48.4.2.1
How an Oracle BAM Data Control Appears in the Data Controls Panel
48.5
Creating Oracle BAM Data Control Queries
48.5.1
How to Choose a Query Type
48.5.2
How to Create Parameters
48.5.3
How to Pass Values to Parameters
48.5.4
How to Create Calculated Fields
48.5.4.1
Creating Groups in Calculated Fields
48.5.5
How to Select, Organize, and Sort Fields
48.5.6
How to Create Filters
48.5.6.1
How to Create Filter Headers
48.5.6.2
How to Create Filter Entries
48.5.6.3
Entering Comparison Values
48.5.6.4
Using Active Now
48.5.7
How to Select and Organize Groups
48.5.7.1
How to Configure Time Groups and Time Series
48.5.8
How to Create Aggregates
48.5.9
How to Modify the Query
48.6
Using Oracle BAM Data Controls in ADF Pages
48.6.1
How to Use an Oracle BAM Data Control in a JSF Page
48.7
Deploying Applications With Oracle BAM Data Controls
48.7.1
How to Deploy to Integrated Oracle WebLogic Server
48.7.2
How to Deploy to a Production Mode Oracle WebLogic Server
49
Defining and Managing Oracle BAM Data Objects
49.1
Introduction to Oracle BAM Data Objects
49.2
Defining Data Objects
49.2.1
How to Define a Data Object
49.2.2
How to Add Columns to a Data Object
49.2.3
How to Add Lookup Columns to a Data Object
49.2.4
How to Add Calculated Columns to a Data Object
49.2.5
How to Add Time Stamp Columns to a Data Object
49.2.6
What You May Need to Know About System Data Objects
49.2.7
What You May Need to Know About Oracle Data Integrator Data Objects
49.3
Creating Permissions on Data Objects
49.3.1
How to Create Permissions on a Data Object
49.3.2
How to Add a Group of Users
49.3.3
How to Copy Permissions from Other Data Objects
49.4
Viewing Existing Data Objects
49.4.1
How to View Data Object General Information
49.4.2
How to View Data Object Layouts
49.4.3
How to View Data Object Contents
49.5
Using Data Object Folders
49.5.1
How to Create Folders
49.5.2
How to Open Folders
49.5.3
How to Set Folder Permissions
49.5.4
How to Move Folders
49.5.5
How to Rename Folders
49.5.6
How to Delete Folders
49.6
Creating Security Filters
49.6.1
How to Create a Security Filter
49.6.2
How to Copy Security Filters from Other Data Objects
49.7
Creating Dimensions
49.7.1
How to Create a Dimension
49.7.2
How to Create a Time Dimension
49.8
Renaming and Moving Data Objects
49.8.1
How to Rename a Data Object
49.8.2
How to Move a Data Object
49.9
Creating Indexes
49.9.1
How to Create an Index
49.10
Clearing Data Objects
49.10.1
How to Clear a Data Object
49.11
Deleting Data Objects
49.11.1
How to Delete a Data Object
50
Creating Oracle BAM Enterprise Message Sources
50.1
Introduction to Enterprise Message Sources
50.2
Creating Enterprise Message Sources
50.2.1
How to Create an Enterprise Message Source
50.2.2
How to Configure DateTime Specification
50.2.3
How to Use Advanced XML Formatting
50.3
Using Enterprise Message Sources
50.3.1
How to Edit, Copy, and Delete Enterprise Message Sources
50.3.2
How to Start and Stop Enterprise Message Sources
50.3.3
How to Test Enterprise Message Sources
50.3.4
How to Refresh Enterprise Message Sources
50.3.5
How to Monitor Enterprise Message Source Metrics
50.4
Using Foreign JMS Providers
50.5
Use Case: Creating an EMS Against Oracle Streams AQ JMS Provider
50.5.1
Creating a JMS Topic in AQ-JMS
50.5.2
Creating a Data Source in Oracle WebLogic Server
50.5.3
Creating a Foreign JMS Server
50.5.4
Defining an EMS in Oracle BAM Architect
50.5.5
Inserting and Updating Records in the SQL Table
51
Using Oracle Data Integrator With Oracle BAM
51.1
Introduction to Using the Oracle Data Integrator With Oracle Business Activity Monitoring
51.2
Installing the Oracle Data Integrator Integration Files
51.2.1
How to Install Integration Files Using the Script
51.2.2
How to Manually Install Integration Files
51.2.3
Using the Logs
51.3
Using Oracle BAM Knowledge Modules
51.4
Creating the Oracle BAM Target
51.4.1
How to Create the Oracle BAM Target
51.5
Reverse Engineering the Oracle BAM Schema
51.6
Updating the Oracle Data Integrator External Data Source Definition
51.6.1
How to Update the Oracle Data Integrator External Data Source Definitions
51.7
Launching Oracle Data Integrator Scenarios From Oracle BAM Alerts
51.8
Running Oracle Data Integrator Agent as a Daemon or a Microsoft Windows Service With Oracle BAM Embedded
52
Creating External Data Sources
52.1
Introduction to External Data Sources
52.2
Creating External Data Sources
52.2.1
How to Create an External Data Source
52.2.2
What You May Need to Know About Oracle Data Integrator External Data Sources
52.2.3
How to Edit an External Data Source
52.2.4
How to Delete an External Data Source
53
Using Oracle BAM Web Services
53.1
Introduction to Oracle BAM Web Services
53.2
Using the DataObjectOperations Web Services
53.2.1
How to Use the DataObjectOperations Web Services
53.3
Using the DataObjectDefinition Web Service
53.3.1
How to Use the DataObjectDefinition Web Service
53.4
Using the ManualRuleFire Web Service
53.4.1
How to Use the ManualRuleFire Web Service
53.5
Using the ICommand Web Service
53.5.1
How to Use the ICommand Web Service
54
Creating Oracle BAM Alerts
54.1
Introduction to Creating Alerts
54.2
Creating Alert Rules
54.2.1
How to Create an Alert Rule
54.2.2
How to Activate Alerts
54.2.3
How to Modify Alert Rules
54.2.4
How to Delete an Alert
54.3
Creating Alert Rules From Templates
54.3.1
How to Create Alert Rules From Templates
54.4
Creating Alert Rules With Messages
54.4.1
How to Create an Alert Rule With a Message
54.5
Creating Complex Alerts
54.5.1
How to Create a Dependent Rule
54.6
Using Alert History
54.6.1
How to View Alert History
54.6.2
How to Clear Alert History
54.7
Launching Alerts by Invoking Web Services
55
Using ICommand
55.1
Introduction to ICommand
55.2
Executing ICommand
55.3
Specifying the Command and Option Syntax
55.3.1
How to Specify the Security Credentials
55.3.2
How to Specify the Command
55.3.3
How to Specify Object Names
55.3.4
How to Specify Multiple Parameter Targets
55.4
Using Command-line-only Parameters
55.5
Running ICommand Remotely
Part XI Using Oracle User Messaging Service
56
Oracle User Messaging Service
56.1
Introduction to User Messaging Service
56.1.1
Components
56.1.2
Architecture
57
Sending and Receiving Messages using the User Messaging Service Java API
57.1
Introduction to the UMS Java API
57.1.1
Creating a Java EE Application Module
57.2
Creating a UMS Client Instance
57.2.1
Creating a MessagingEJBClient Instance Using a Programmatic or Declarative Approach
57.2.2
API Reference for Class MessagingClientFactory
57.3
Sending a Message
57.3.1
Creating a Message
57.3.1.1
Creating a Plaintext Message
57.3.1.2
Creating a Multipart/Alternative Message (with Text/Plain and Text/HTML Parts)
57.3.1.3
Creating Delivery Channel-Specific Payloads in a Single Message for Recipients with Different Delivery Types
57.3.2
API Reference for Class MessageFactory
57.3.3
API Reference for Interface Message
57.3.4
API Reference for Enum DeliveryType
57.3.5
Addressing a Message
57.3.5.1
Types of Addresses
57.3.5.2
Creating Address Objects
57.3.5.3
Creating a Recipient with a Failover Address
57.3.5.4
API Reference for Class AddressFactory
57.3.5.5
API Reference for Interface Address
57.3.6
Retrieving Message Status
57.3.6.1
Synchronous Retrieval of Message Status
57.3.6.2
Asynchronous Notification of Message Status
57.4
Receiving a Message
57.4.1
Registering an Access Point
57.4.2
Synchronous Receiving
57.4.3
Asynchronous Receiving
57.4.4
Message Filtering
57.5
Using the UMS Enterprise JavaBeans Client API to Build a Client Application
57.5.1
Overview of Development
57.5.2
Configuring the Email Driver
57.5.3
Using JDeveloper 11g to Build the Application
57.5.3.1
Opening the Project
57.5.4
Deploying the Application
57.5.5
Testing the Application
57.6
Using the UMS Enterprise JavaBeans Client API to Build a Client Echo Application
57.6.1
Overview of Development
57.6.2
Configuring the Email Driver
57.6.3
Using JDeveloper 11g to Build the Application
57.6.3.1
Opening the Project
57.6.4
Deploying the Application
57.6.5
Testing the Application
57.7
Creating a New Application Server Connection
58
Parlay X Web Services Multimedia Messaging API
58.1
Introduction to Parlay X Messaging Operations
58.2
Send Message Interface
58.2.1
sendMessage Operation
58.2.2
getMessageDeliveryStatus Operation
58.3
Receive Message Interface
58.3.1
getReceivedMessages Operation
58.3.2
getMessage Operation
58.3.3
getMessageURIs Operation
58.4
Oracle Extension to Parlay X Messaging
58.4.1
ReceiveMessageManager Interface
58.4.1.1
startReceiveMessage Operation
58.4.1.2
stopReceiveMessage Operation
58.5
Parlay X Messaging Client API and Client Proxy Packages
58.6
Sample Chat Application with Parlay X APIs
58.6.1
Overview
58.6.1.1
Provided Files
58.6.2
Running the Pre-Built Sample
58.6.3
Testing the Sample
58.6.4
Creating a New Application Server Connection
59
User Messaging Preferences
59.1
Introduction to User Messaging Preferences
59.1.1
Terminology
59.1.2
Configuration of Notification Delivery Preferences
59.1.3
Delivery Preference Rules
59.1.3.1
Data Types
59.1.3.2
System Terms
59.1.3.3
Business Terms
59.1.4
Rule Actions
59.2
How to Manage Messaging Channels
59.2.1
Creating a Channel
59.2.2
Editing a Channel
59.2.3
Deleting a Channel
59.2.4
Setting a Default Channel
59.3
Creating Contact Rules using Filters
59.3.1
Creating Filters
59.3.2
Editing a Filter
59.3.3
Deleting a Filter
59.4
Configuring Settings
Part XII Appendices
A
BPEL Process Activities and Services
A.1
Introduction to Activities and Components
A.2
Introduction to BPEL Activities
A.2.1
Tabs Common to Many Activities
A.2.2
Assign Activity
A.2.3
Bind Entity Activity
A.2.4
Compensate Activity
A.2.5
Create Entity
A.2.6
Email Activity
A.2.7
Empty Activity
A.2.8
Flow Activity
A.2.9
FlowN Activity
A.2.10
IM Activity
A.2.11
Invoke Activity
A.2.12
Java Embedding Activity
A.2.13
Phase Activity
A.2.14
Pick Activity
A.2.15
Receive Activity
A.2.16
Receive Signal Activity
A.2.17
Remove Entity Activity
A.2.18
Reply Activity
A.2.19
Scope Activity
A.2.20
Sequence Activity
A.2.21
Signal Activity
A.2.22
SMS Activity
A.2.23
Switch Activity
A.2.24
Terminate Activity
A.2.25
Throw Activity
A.2.26
Transform Activity
A.2.27
User Notification
A.2.28
Validate Activity
A.2.29
Voice Activity
A.2.30
Wait Activity
A.2.31
While Activity
A.3
Introduction to BPEL Services
A.3.1
ADF-BC Service
A.3.2
AQ Adapter
A.3.3
Database Adapter
A.3.4
Direct Binding Service
A.3.5
EJB Service
A.3.6
File Adapter
A.3.7
FTP Adapter
A.3.8
JMS Adapter
A.3.9
MQ Adapter
A.3.10
Oracle Applications
A.3.11
Oracle BAM Adapter
A.3.12
Oracle B2B
A.3.13
Partner Link (Adapter/Web Service)
A.3.14
Socket Adapter
A.3.15
Third Party Adapter
A.3.16
Web Service
A.4
Publishing and Browsing the Oracle Service Registry
A.4.1
How to Publish a Business Service
A.4.2
How to Create a Connection to the Registry
A.4.3
How to Configure a SOA project to Invoke a Service from the Registry
A.4.3.1
Dynamically Resolving the SOAP Endpoint Location
A.4.3.2
Dynamically Resolving the WSDL Endpoint Location
A.4.4
How To Configure the Inquiry URL, UDDI Service Key, and Endpoint Address for Runtime
A.5
Validating When Loading a Process Diagram
B
XPath Extension Functions
B.1
SOA XPath Extension Functions
B.1.1
Database Functions
B.1.1.1
lookup-table
B.1.1.2
query-database
B.1.1.3
sequence-next-val
B.1.2
Date Functions
B.1.2.1
add-dayTimeDuration-to-dateTime
B.1.2.2
current-date
B.1.2.3
current-dateTime
B.1.2.4
current-time
B.1.2.5
day-from-dateTime
B.1.2.6
format-dateTime
B.1.2.7
hours-from-dateTime
B.1.2.8
implicit-timezone
B.1.2.9
minutes-from-dateTime
B.1.2.10
month-from-dateTime
B.1.2.11
seconds-from-dateTime
B.1.2.12
subtract-dayTimeDuration-from-dateTime
B.1.2.13
timezone-from-dateTime
B.1.2.14
year-from-dateTime
B.1.3
Mathematical Functions
B.1.3.1
abs
B.1.4
String Functions
B.1.4.1
compare
B.1.4.2
compare-ignore-case
B.1.4.3
create-delimited-string
B.1.4.4
ends-with
B.1.4.5
format-string
B.1.4.6
get-content-as-string
B.1.4.7
get-content-from-file-function
B.1.4.8
get-localized-string
B.1.4.9
index-within-string
B.1.4.10
last-index-within-string
B.1.4.11
left-trim
B.1.4.12
lower-case
B.1.4.13
matches
B.1.4.14
right-trim
B.1.4.15
upper-case
B.2
BPEL XPath Extension Functions
B.2.1
addQuotes
B.2.2
appendToList
B.2.3
copyList
B.2.4
countNodes
B.2.5
doc
B.2.6
doStreamingTranslate
B.2.7
doTranslateFromNative
B.2.8
doTranslateToNative
B.2.9
doXSLTransform
B.2.10
doXSLTransformForDoc
B.2.11
formatDate
B.2.12
generateGUID
B.2.13
getApplicationName
B.2.14
getAttachmentContent
B.2.15
getComponentName
B.2.16
getComponentInstanceID
B.2.17
getCompositeName
B.2.18
getCompositeInstanceID
B.2.19
getCompositeURL
B.2.20
getContentAsString
B.2.21
getConversationId
B.2.22
getCreator
B.2.23
getCurrentDate
B.2.24
getCurrentDateTime
B.2.25
getCurrentTime
B.2.26
getDomainId
B.2.27
getECID
B.2.28
getElement
B.2.29
getFaultAsString
B.2.30
getFaultName
B.2.31
getGroupIdsFromGroupAlias
B.2.32
getInstanceId
B.2.33
getNodeValue
B.2.34
getNodes
B.2.35
getOwnerDocument
B.2.36
getParentComponentInstanceID
B.2.37
getPreference
B.2.38
getProcessId
B.2.39
getProcessOwnerId
B.2.40
getProcessURL
B.2.41
getProcessVersion
B.2.42
getUserAliasId
B.2.43
getUserIdsFromGroupAlias
B.2.44
setCompositeInstanceTitle
B.2.45
instanceOf
B.2.46
integer
B.2.47
parseEscapedXML
B.2.48
parseXML
B.2.49
processXQuery
B.2.50
processXSLT
B.2.51
processXSLTAttachment
B.2.52
processXSQL
B.2.53
readBinaryFromFile
B.2.54
readFile
B.2.55
writeBinaryToFile
B.2.56
BPEL Extension Functions
B.2.56.1
getLinkStatus
B.2.56.2
getVariableData
B.2.56.3
getVariableProperty
B.2.57
Utility Functions
B.2.57.1
batchProcessActive
B.2.57.2
batchProcessCompleted
B.2.57.3
format
B.2.57.4
genEmptyElem
B.2.57.5
getChildElement
B.2.57.6
getMessage
B.2.57.7
max-value-among-nodeset
B.2.57.8
min-value-among-nodeset
B.2.57.9
square-root
B.2.57.10
translateFromNative
B.2.57.11
translateToNative
B.2.57.12
translateFromNativeAttachment
B.2.57.13
translateToNativeAttachment
B.3
Mediator XPath Extension Functions
B.3.1
getComponentInstanceID
B.3.2
getComponentName
B.3.3
getCompositeInstanceID
B.3.4
getCompositeName
B.3.5
getHeader
B.3.6
getECID
B.3.7
getParentComponentInstanceID
B.3.8
setCompositeInstanceTitle
B.4
Advanced Functions
B.4.1
create-nodeset-from-delimited-string
B.4.2
generate-guid
B.4.3
lookupPopulatedColumns
B.4.4
lookupValue
B.4.5
lookupValue1M
B.4.6
lookupXRef
B.4.7
lookupXRef1M
B.4.8
lookup-xml
B.4.9
markForDelete
B.4.10
populateXRefRow
B.4.11
populateXRefRow1M
B.5
Workflow Service Functions
B.5.1
clearTaskAssignees
B.5.2
createWordMLDocument
B.5.3
getNotificationProperty
B.5.4
getNumberOfTaskApprovals
B.5.5
getPreviousTaskApprover
B.5.6
getTaskAttachmentByIndex
B.5.7
getTaskAttachmentByName
B.5.8
getTaskAttachmentContents
B.5.9
getTaskAttachmentsCount
B.5.10
getTaskResourceBundleString
B.5.11
wfDynamicGroupAssign
B.5.12
wfDynamicUserAssign
B.5.13
Identity Service Functions
B.5.13.1
getDefaultRealmName
B.5.13.2
getGroupProperty
B.5.13.3
getManager
B.5.13.4
getReportees
B.5.13.5
getSupportedRealmNames
B.5.13.6
getUserProperty
B.5.13.7
getUserRoles
B.5.13.8
getUsersInGroup
B.5.13.9
isUserInRole
B.5.13.10
lookupGroup
B.5.13.11
lookupUser
B.6
Using the XPath Building Assistant
B.6.1
XPath Building Assistant Description
B.6.2
Starting the XPath Building Assistant
B.6.3
Using the XPath Building Assistant in Oracle JDeveloper: Step-By-Step Example
B.6.4
Using the XPath Building Assistant in the XSLT Mapper
B.6.5
Function Parameter Tool Tips
B.6.6
Syntactic and Semantic Validation
B.6.7
Creating Expressions with Free Form Text and XPath Expressions
B.7
Creating User-Defined XPath Extension Functions
B.7.1
How to Implement User-Defined XPath Extension Functions
B.7.1.1
How to Implement Functions for the XSLT Mapper
B.7.1.2
How to Implement Functions for All Other Components
B.7.2
How to Configure User-Defined XPath Extension Functions
B.7.3
How to Deploy User-Defined Functions to Runtime
C
Deployment Descriptor Properties
C.1
Introduction to Deployment Descriptor Properties
C.1.1
How to Define Deployment Descriptor Properties
C.1.2
How to Get the Value of a Preference within a BPEL Process
C.2
Deprecated 10.1.3 Properties
D
Understanding Sensor Public Views and the Sensor Actions XSD
D.1
Introduction to Sensor Public Views and the Sensor Actions XSD File
D.2
Sensor Public Views
D.2.1
BPM Schema
D.2.1.1
BPEL_PROCESS_INSTANCES
D.2.1.2
BPEL_ACTIVITY_SENSOR_VALUES
D.2.1.3
BPEL_FAULT_SENSOR_VALUES
D.2.1.4
BPEL_VARIABLE_SENSOR_VALUES
D.3
Sensor Actions XSD File
E
Oracle BAM Web Services Operations
E.1
DataObjectOperations10131
E.1.1
Batch
E.1.1.1
Request Message
E.1.2
Delete
E.1.2.1
Request Message
E.1.3
Insert
E.1.3.1
Request Message
E.1.4
Update
E.1.4.1
Request Message
E.1.5
Upsert
E.1.5.1
Request Message
E.2
DataObjectOperationsByName
E.2.1
Delete
E.2.1.1
Request Message
E.2.2
Get
E.2.2.1
Request Message
E.2.3
Insert
E.2.3.1
Request Message
E.2.4
Update
E.2.4.1
Request Message
E.2.5
Upsert
E.2.5.1
Request Message
E.3
DataObjectOperationsByID
E.3.1
Batch
E.3.1.1
Request Message
E.3.2
Delete
E.3.2.1
Request Message
E.3.3
Insert
E.3.3.1
Request Message
E.3.4
Update
E.3.4.1
Request Message
E.3.5
Upsert
E.3.5.1
Request Message
E.4
DataObjectDefinition Operations
E.4.1
Create
E.4.1.1
Request Message
E.4.1.2
Response Message
E.4.2
Delete
E.4.2.1
Request Message
E.4.2.2
Response Message
E.4.3
Get
E.4.3.1
Request Message
E.4.3.2
Response Message
E.4.4
Update
E.4.4.1
Request Message
E.4.4.2
Response Message
E.5
ManualRuleFire Operations
E.5.1
FireRuleByName
E.5.1.1
Request Message
E.5.1.2
Response Message
F
Oracle BAM Alert Rule Options
F.1
Events
F.1.1
In a specific amount of time
F.1.2
At a specific time today
F.1.3
On a certain day at a specific time
F.1.4
Every interval between two times
F.1.5
Every date interval starting on certain date at a specific time
F.1.6
When a report changes
F.1.7
When a data field changes in data object
F.1.8
When a data field in a report meets specified conditions
F.1.9
When a data field in a data object meets specified conditions
F.1.10
When this rule is launched
F.2
Conditions
F.2.1
If it is between two times
F.2.2
If It is between two days
F.2.3
If it is a particular day of the week
F.3
Actions
F.3.1
Send a report via email
F.3.2
Send a message via email
F.3.3
Send a report via email and escalate to another user after a specific amount of time
F.3.4
Send a parameterized message
F.3.5
Launch a rule
F.3.6
Launch rule if an action fails
F.3.7
Delete rows from a Data Object
F.3.8
Call a Web Service
F.3.9
Run an Oracle Data Integrator Scenario
F.4
Frequency Constraint
G
Oracle BAM ICommand Operations and File Formats
G.1
Summary of Individual Operations
G.2
Detailed Operation Descriptions
G.2.1
Clear
G.2.2
Delete
G.2.3
Export
G.2.4
Import
G.2.5
Rename
G.3
Format of Command File
G.3.1
Inline Content
G.3.2
Command IDs
G.3.3
Continue On Error
G.4
Format of Log File
G.5
Sample Export File
G.6
Regular Expressions
H
Normalized Message Properties
H.1
Introduction to Normalized Messages
H.2
Oracle BPEL Process Manager Properties
H.3
Oracle Web Services Addressing Properties
I
Oracle User Messaging Service Applications
I.1
Send Message to User Specified Channel
I.1.1
Overview
I.1.1.1
Provided Files
I.1.2
Installing and Configuring SOA and User Messaging Service
I.1.2.1
Updating Addresses in Your LDAP User Profile
I.1.3
Building the Sample
I.1.4
Creating a New Application Server Connection
I.1.5
Deploying the Project
I.1.6
Configuring User Messaging Preferences
I.1.7
Testing the Sample
I.1.7.1
Verifying the Execution of Sending the Email
I.2
Send Email with Attachments
I.2.1
Overview
I.2.1.1
Provided Files
I.2.2
Installing and Configuring SOA and User Messaging Service
I.2.2.1
Updating Addresses in Your LDAP User Profile
I.2.3
Running the Pre-Built Sample
I.2.4
Testing the Sample
I.2.4.1
Verifying the Execution
I.2.5
Building the Sample
I.2.6
Creating a New Application Server Connection
J
Oracle SOA Suite Properties Road Map
J.1
Oracle BPEL Process Manager Deployment Descriptor Properties
J.2
Normalized Message Header Properties
J.2.1
Oracle JCA Adapter Message Header Properties
J.2.2
Oracle BPEL Process Manager and Oracle Web Services Addressing Message Header Properties
J.2.3
Oracle B2B Message Header Properties
J.3
SOA Composite Application Properties
J.4
Fault Policy and Adapter Rejected Message Properties
J.5
Oracle B2B System Properties
J.6
Oracle Enterprise Manager Fusion Middleware Control Console Property Pages
J.6.1
SOA Infrastructure Properties
J.6.2
Oracle BPEL Process Manager
J.6.3
Human Workflow Notification and Task Service
J.6.4
Oracle Mediator
J.6.5
Cross References
J.6.6
Oracle B2B
J.6.7
Service and Reference Binding Component Properties
J.7
System MBean Browser Properties
J.7.1
SOA Infrastructure Properties
J.7.2
Oracle BPEL Process Manager Properties
J.7.3
Oracle Mediator Properties
J.7.4
Human Workflow Notification and Task Service Properties
J.7.5
Oracle Service Registry WSDL URL Caching Configuration
Index
Scripting on this page enhances content navigation, but does not change the content in any way.