Table of Contents
- Title and Copyright Information
- Preface
- What's New in This Guide
-
Part I Getting Started with Oracle SOA Suite
-
1
Introduction to Building Applications with Oracle SOA Suite
-
1.1
Introduction to Oracle SOA Suite
- 1.1.1 Service-Oriented Architecture
- 1.1.2 Services
- 1.1.3 Oracle SOA Suite
- 1.1.4 Standards Used by Oracle SOA Suite to Enable SOA
- 1.1.5 Service Component Architecture within SOA Composite Applications
- 1.1.6 Runtime Behavior of a SOA Composite Application
- 1.1.7 Approaches for Designing SOA Composite Applications
- 1.2 Getting Started with Oracle SOA Suite
- 1.3 Setting Accessibility Options
-
1.1
Introduction to Oracle SOA Suite
-
2
Getting Started with Developing SOA Composite Applications
- 2.1 Creating a SOA Application
- 2.2 Adding Service Components
-
2.3
Adding Service Binding Components
- 2.3.1 How to Add a Service Binding Component
- 2.3.2 How to Define the Interface (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.3.6 What You May Need to Know About Using the Same Namespace in Different WSDL Files in the Same Composite
- 2.3.7 What You May Need to Know About WSDL Browsing in the Resources Window When the SOA Infrastructure Uses Both Internal and External Oracle HTTP Servers
-
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 Mixed Message Types in a WSDL File
- 2.4.5 What You May Need to Know About Invoking the Default Revision of a Composite
- 2.5 Adding Wires
- 2.6 Adding Descriptions to SOA Composite Applications
- 2.7 Renaming, Deleting, and Moving Components and Artifacts
- 2.8 Viewing Component Details in the Property Inspector
- 2.9 Adding Security Policies
- 2.10 Deploying a SOA Composite Application
- 2.11 Managing and Testing a SOA Composite Application
-
3
Managing Shared Data with the Design-Time MDS Repository
- 3.1 Introduction to SOA Design-Time MDS Repository Management
- 3.2 Changing the Default SOA-MDS Location
- 3.3 Sharing Data with the SOA Design-Time MDS Repository
- 3.4 Creating and Deleting Subfolders Under the /apps Folder
- 3.5 Exporting the Selected Contents of the /apps Folder to a JAR File
- 3.6 Importing the Contents of the JAR File into the /apps Folder
- 3.7 Transferring the Selected Contents of the /apps Folder to Another MDS Repository
- 3.8 Exporting an Existing Release 11g MDS Repository to a JAR File
- 3.9 Browsing for Files in the SOA Design-Time MDS Repository
-
1
Introduction to Building Applications with Oracle SOA Suite
-
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.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.4.1
How to Create a Partner Link
- 4.5 Introduction to Adapters
- 4.6 Introduction to BPEL Process Monitors
-
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.2 Delegating XML Data Operations to Data Provider Services
- 6.3 Translating Between Native Data and XML
- 6.4 Using Standalone SDO-based Variables
- 6.5 Initializing a Variable with Expression Constants or Literal XML
- 6.6 Copying Between Variables
- 6.7 Moving and Copying Variables in the Structure Window
- 6.8 Accessing Fields in Element and Message Type Variables
- 6.9 Assigning Numeric Values
- 6.10 Using Mathematical Calculations with XPath Standards
- 6.11 Assigning String Literals
- 6.12 Concatenating Strings
- 6.13 Assigning Boolean Values
- 6.14 Assigning a Date or Time
- 6.15 Manipulating Attributes
- 6.16 Manipulating XML Data with bpelx Extensions
- 6.17 Validating XML Data
- 6.18 Using Element Variables in Message Exchange Activities in BPEL 2.0
- 6.19 Mapping WSDL Message Parts in BPEL 2.0
- 6.20 Importing Process Definitions in BPEL 2.0
- 6.21 Manipulating XML Data Sequences That Resemble Arrays
- 6.22 Converting from a String to an XML Element
- 6.23 Understanding Document-Style and RPC-Style WSDL Differences
- 6.24 Manipulating SOAP Headers in BPEL
- 6.25 Declaring Extension Namespaces in BPEL 2.0
-
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.3 Specifying Transaction Timeout Values in Durable Synchronous Processes
- 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.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.2.3 What You May Need to Know About Midprocess Receive Activities Consuming Messages After Timing Out
- 8.2.4 What You May Need to Know About Multiple Client Components Invoking a Composite
- 8.2.5 What You May Need to Know About Limitations on BPEL 2.0 IMA Support
- 8.2.6 What Happens When You Specify a Conversation ID
- 8.3 Routing Callback Messages to the Correct Endpoint when Multiple Receive or Pick Activities Use the Same Partner Link
- 8.4 Managing Idempotence at the Partner Link Operation Level
- 8.5 Creating a Dynamic Partner Link at Design Time for Use at Runtime
- 8.6 Overriding Security Certificates when Invoking Dynamic Partner Links
- 8.7 Overriding WSDL Files of Dynamic Partner Links
- 8.8 Using WS-Addressing in an Asynchronous Service
-
9
Using Correlation Sets and Message Aggregation
- 9.1 Introduction to Correlation Sets in an Asynchronous Service
-
9.2
Creating Correlation Sets in Oracle JDeveloper
- 9.2.1 How to Create a Correlation Set with the Correlation Wizard
-
9.2.2
How to Manually Create Correlation Sets From the Correlations Tab
- 9.2.2.1 Step 1: Creating a Project
- 9.2.2.2 Step 2: Configuring Partner Links and File Adapter Services
- 9.2.2.3 Step 3: Creating Three Receive Activities
- 9.2.2.4 Step 4: Creating Correlation Sets
- 9.2.2.5 Step 5: Associating Correlation Sets with Receive Activities
- 9.2.2.6 Step 6: Creating Property Aliases
- 9.2.2.7 Step 7: Reviewing WSDL File Content
- 9.2.3 What You May Need to Know About Conversion IDs and Different Composite Revisions
- 9.2.4 What You May Need to Know About Setting Correlations for an IMA Using a fromParts Element With Multiple Parts
- 9.3 Routing Messages to the Same Instance
-
10
Using Parallel Flow in a BPEL Process
- 10.1 Introduction to Parallel Flows in BPEL Processes
-
10.2
Creating a Parallel Flow
- 10.2.1 How to Create a Parallel Flow
- 10.2.2 What Happens When You Create a Parallel Flow
- 10.2.3 Synchronizing the Execution of Activities in a Flow Activity
- 10.2.4 How to Create Synchronization Between Activities Within a Flow Activity
- 10.2.5 What Happens When You Create Synchronization Between Activities Within a Flow Activity
- 10.2.6 What You May Need to Know About Join Conditions in Target Activities
- 10.3 Customizing the Number of Parallel Branches
-
11
Using Conditional Branching in a BPEL Process
- 11.1 Introduction to Conditional Branching
- 11.2 Defining Conditional Branching with the If or Switch Activity
- 11.3 Defining Conditional Branching with the While Activity
- 11.4 Defining Conditional Branching with the repeatUntil Activity
- 11.5 Specifying XPath Expressions to Bypass Activity Execution
-
12
Using Fault Handling in a BPEL Process
- 12.1 Introduction to a Fault Handler
- 12.2 Introduction to BPEL Standard Faults
- 12.3 Introduction to the Business and Runtime Fault Categories of BPEL Faults
-
12.4
Handling Faults with the Fault Management Framework
- 12.4.1 Understanding How the Fault Policy Binding Resolution Works
- 12.4.2 How to Design a Fault Policy for Automated Fault Recovery with the Fault Policy Wizard
- 12.4.3 How to Manually Design a Fault Policy for Automated Fault Recovery
- 12.4.4 How to Execute a Fault Policy
- 12.4.5 How to Use a Java Action Fault Policy
- 12.4.6 How to Design Fault Policies for Oracle BPM Suite
- 12.4.7 What You May Need to Know About Designing a Fault Policy in a Synchronous BPEL Process
- 12.4.8 What You May Need to Know About Fault Management Behavior When the Number of Instance Retries is Exceeded
- 12.4.9 What You May Need to Know About Binding Level Retry Execution Within Fault Policy Retries
- 12.5 Catching BPEL Runtime Faults
- 12.6 Getting Fault Details with the getFaultAsString XPath Extension Function
- 12.7 Throwing Internal Faults with the Throw Activity
- 12.8 Rethrowing Faults with the Rethrow Activity
- 12.9 Returning External Faults
-
12.10
Managing a Group of Activities with a Scope Activity
- 12.10.1 How to Create a Scope Activity
- 12.10.2 How to Add Descriptive Notes and Images to a Scope Activity
- 12.10.3 What Happens After You Create a Scope Activity
- 12.10.4 What You May Need to Know About Scopes
- 12.10.5 How to Use a Fault Handler Within a Scope
- 12.10.6 What You May Need to Know About the idempotent Property and Fault Handling
- 12.10.7 How to Create a Catch Activity in a Scope
- 12.10.8 What Happens When You Create a Catch Activity in a Scope
- 12.10.9 How to Insert No-Op Instructions into a Business Process with an Empty Activity
- 12.10.10 What Happens When You Create an Empty Activity
- 12.11 Re-executing Activities in a Scope Activity with the Replay Activity
-
12.12
Using Compensation After Undoing a Series of Operations
- 12.12.1 Using a Compensate Activity
- 12.12.2 How to Create a Compensate Activity
- 12.12.3 What Happens When You Create a Compensate Activity
- 12.12.4 Using a compensateScope Activity in BPEL 2.0
- 12.12.5 How to Create a compensateScope Activity
- 12.12.6 What Happens When You Create a compensateScope Activity
- 12.13 Stopping a Business Process Instance with a Terminate or Exit Activity
-
12.14
Throwing Faults with Assertion Conditions
- 12.14.1 How to Create Assertion Conditions
- 12.14.2 How to Disable Assertions
- 12.14.3 What Happens When You Create Assertion Conditions
-
12.14.4
What You May Need to Know About Assertion Conditions
- 12.14.4.1 bpelx:postAssert and bpelx:preAssert Extensions
- 12.14.4.2 Use of faultName and message Attributes
- 12.14.4.3 Multiple Assertions
- 12.14.4.4 Use of Built-in and Custom XPath Functions and $variable References
- 12.14.4.5 Assertion Condition Evaluation Logging of Events to the Instance Audit Trail
- 12.14.4.6 Expressions Not Evaluating to an XML Schema Boolean Type Throw a Fault
- 12.14.4.7 Assertion Conditions in a Standalone Assert Activity
- 12.14.5 What You May Need to Know About Postassertion and Preassertion Condition Schemas and Syntax
- 12.15 Classifying SOAP Faults as Retriable
-
13
Transaction and Fault Propagation Semantics in BPEL Processes
- 13.1 Introduction to Transaction Semantics
- 13.2 Introduction to Execution of One-Way Invocations
- 13.3 Executing a Business Process Without a Transaction
- 13.4 Using In-Memory SOA to Improve System Performance
-
14
Incorporating Java and Java EE Code in a BPEL Process
- 14.1 Introduction to Java and Java EE Code in BPEL Processes
-
14.2
Incorporating Java and Java EE Code in BPEL Processes
- 14.2.1 How to Wrap Java Code as a SOAP Service
- 14.2.2 What You May Need to Know About Wrapping Java Code as a SOAP Service
- 14.2.3 How to Embed Java Code Snippets into a BPEL Process with the bpelx:exec Tag
- 14.2.4 How to Embed Java Code Snippets in a BPEL 2.0 Process
- 14.2.5 How to Use an XML Facade to Simplify DOM Manipulation
- 14.2.6 How to Use bpelx:exec Built-in Methods
- 14.2.7 How to Use Java Code Wrapped in a Service Interface
- 14.3 Adding Custom Classes and JAR Files
- 14.4 Using Java Embedding in a BPEL Process in Oracle JDeveloper
- 14.5 Embedding Service Data Objects with bpelx:exec
- 14.6 Sharing a Custom Implementation of a Class with Oracle BPEL Process Manager
-
15
Using Events and Timeouts in BPEL Processes
- 15.1 Introduction to Event and Timeout Concepts
- 15.2 Selecting Between Continuing or Waiting on a Process with a Pick Activity
-
15.3
Setting Timeouts for Request-Reply and In-Only Operations in Receive Activities
- 15.3.1 How to Set Timeouts in Receive Activities
- 15.3.2 What Happens When You Set Timeouts in Receive Activities
-
15.3.3
What You May Need to Know About Setting Timeouts for Request-Reply and In-Only Operations
- 15.3.3.1 Timeout Settings Relative from When the Activity is Invoked
- 15.3.3.2 Timeout Settings as an Absolute Date Time
- 15.3.3.3 Timeout Settings Computed Dynamically with an XPath Expression
- 15.3.3.4 bpelx:timeout Fault Thrown During an Activity Timeout
- 15.3.3.5 Event Added to the BPEL Instance Audit Trail During an Activity Timeout
- 15.3.3.6 Recoverable Timeout Activities During a Server Restart (Refresh Expiration Alarm Table)
- 15.4 Setting an Expiration Time with a Wait Activity
- 15.5 Specifying Events to Wait for Message Arrival with an OnEvent Branch in BPEL 2.0
- 15.6 Setting Timeouts for Durable Synchronous Processes
- 15.7 Invoking an Oracle Enterprise Scheduler Job in a BPEL Process
- 16 Coordinating Master and Detail Processes
-
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.2 How to Configure the IM Notification Channel
- 17.3.3 How to Configure the SMS Notification Channel
- 17.3.4 How to Select Email Addresses and Telephone Numbers Dynamically
- 17.3.5 How to Select Notification Recipients by Browsing the User Directory
- 17.4 Allowing the End User to Select Notification Channels
-
18
Using Oracle BPEL Process Manager Sensors and Analytics
- 18.1 Introduction to Oracle BPEL Process Manager Sensors
-
18.2
Configuring Sensors and Sensor Actions in Oracle JDeveloper
- 18.2.1 How to Access Sensors and Sensor Actions
- 18.2.2 How to Configure Activity, Variable, and Fault Sensors
- 18.2.3 How to Configure Sensor Actions
- 18.2.4 How to Publish to Remote Topics and Queues
- 18.2.5 How to Create a Custom Data Publisher
- 18.2.6 How to Register the Sensors and Sensor Actions in the composite.xml File
- 18.3 Viewing Sensors and Sensor Action Definitions in Oracle Enterprise Manager Fusion Middleware Control
-
18.4
Configuring BPEL Process Analytics
- 18.4.1 Introduction to Business Indicators
- 18.4.2 Introduction to Standard Sampling Points
- 18.4.3 Introduction to User-Defined Sampling Points
- 18.4.4 How to Access Analytics View
- 18.4.5 How to Edit Business Indicators in the Business Indicator Overview Editor
- 18.4.6 Deploying BPEL Analytics
- 18.4.7 Viewing BPEL Analytics at Runtime
-
4
Getting Started with Oracle BPEL Process Manager
-
Part III Using the Oracle Mediator Service Component
-
19
Getting Started with Oracle Mediator
- 19.1 Introduction to Oracle Mediator
-
19.2
Mediator Functionality
- 19.2.1 Content-Based and Header-Based Routing
- 19.2.2 Synchronous and Asynchronous Interactions
- 19.2.3 Sequential and Parallel Routing of Messages
- 19.2.4 Message Resequencing
- 19.2.5 Data Transformation
- 19.2.6 Payload Validation
- 19.2.7 Java Callouts
- 19.2.8 Event Handling
- 19.2.9 Dynamic Routing
- 19.2.10 Error Handling
- 19.2.11 Sending Messages Back to the Caller (Echo)
- 19.2.12 Multiple Part Messages
- 19.3 Creating a Mediator
- 19.4 Introduction to the Mediator Editor Environment
- 19.5 Configuring the Mediator Interface Definition
- 19.6 Defining an Interface for a Mediator
- 19.7 Generating a WSDL File
- 19.8 Specifying Validation and Priority Properties
- 19.9 Modifying a Mediator Service Component
-
20
Creating Oracle Mediator Routing Rules
- 20.1 Introduction to Routing Rules
- 20.2 Resequencing Rules
-
20.3
Defining Routing Rules
- 20.3.1 How To Access the Routing Rules Section
-
20.3.2
How to Create Static Routing Rules
- 20.3.2.1 How to Specify Mediator Services or Events
- 20.3.2.2 What You May Need to Know About Echoing a Service
- 20.3.2.3 How to Specify Sequential or Parallel Execution
- 20.3.2.4 How to Configure Response Messages
- 20.3.2.5 How to Handle Premature Callbacks
- 20.3.2.6 How to Handle Multiple Callbacks
- 20.3.2.7 How to Handle Faults
- 20.3.2.8 How to Specify an Expression for Filtering Messages
- 20.3.2.9 How to Translate Between Native XSD Formats and XML Formats
- 20.3.2.10 How to Use Inbound Translation
- 20.3.2.11 How to Use Outbound Translation
- 20.3.2.12 How to Create XSLT Transformations
- 20.3.2.13 How to Create XQuery Transformations
- 20.3.2.14 How to Assign Values
- 20.3.2.15 What You May Need to Know About the Assign Activity
- 20.3.2.16 How to Access Headers for Filters and Assignments
- 20.3.2.17 How to Use Semantic Validation
- 20.3.2.18 How to Work with Attachments
-
20.3.2.19
How to Use Java Callouts
- 20.3.2.19.1 To make Java callout classes available:
- 20.3.2.19.2 To enter the Java class for the callout:
- 20.3.2.19.3 To set the payload root element (when using a filter expression):
- 20.3.2.19.4 To enable domain value map and cross reference functions:
- 20.3.2.19.5 Mediator Java Callout API
- 20.3.2.19.6 Sample Java Callout Class
- 20.3.3 How to Create Dynamic Routing Rules
- 20.3.4 What You May Need to Know About Using Dynamic Routing Rules
- 20.3.5 How to Define Default Routing Rules
-
21
Working with Multiple Part Messages in Oracle Mediator
- 21.1 Introduction to Mediator Multipart Message Support
-
21.2
Working with Multipart Request Messages
- 21.2.1 How to Specify Filter Expressions for Multipart Request Messages
- 21.2.2 How to Add Validations for Multipart Request Messages
- 21.2.3 How to Create Transformations for Multipart Request Messages
- 21.2.4 How to Assign Values for Multipart Request Messages
- 21.2.5 How to Work with Multipart Reply, Fault, and Callback Source Messages
- 21.2.6 How to Work with Multipart Target Messages
- 22 Using Oracle Mediator Error Handling
-
23
Resequencing in Oracle Mediator
- 23.1 Introduction to the Resequencer
-
23.2
Resequencing Order
- 23.2.1 Standard Resequencer
- 23.2.2 FIFO Resequencer
-
23.2.3
Best Effort Resequencer
- 23.2.3.1 Overview of the Best Effort Resequencer
- 23.2.3.2 Best Effort Resequencer Message Selection Strategies
- 23.2.3.3 Best Effort Resequencer Message Delivery
- 23.2.3.4 Information Required for Best Effort Resequencing
- 23.2.3.5 Example of Best Effort Resequencing Based on Maximum Rows
- 23.2.3.6 Example of Best Effort Resequencing Based on a Time Window
- 23.3 Configuring the Resequencer
- 24 Understanding Message Exchange Patterns of an Oracle Mediator
-
19
Getting Started with Oracle Mediator
-
Part IV Using the Business Rules Service Component
-
25
Getting Started with Oracle Business Rules
- 25.1 Introduction to the Business Rule Service Component
- 25.2 Overview of Rules Designer Editor Environment
- 25.3 Introduction to Creating and Editing Business Rules
-
25.4
Adding Business Rules to a BPEL Process
- 25.4.1 How to Add Inputs for Business Rule
- 25.4.2 How to Add Outputs for Business Rule
- 25.4.3 How to Set Options and Create Decision Service and Business Rule Dictionary
- 25.4.4 What Happens When You Add Business Rules to a BPEL Process
- 25.4.5 What Happens When You Create a Business Rules Dictionary
- 25.4.6 What You May Need to Know About Invoking Business Rules in a BPEL Process
- 25.4.7 What You May Need to Know About Decision Component Stateful Operation
- 25.5 Adding Business Rules to a SOA Composite Application
- 25.6 Running Business Rules in a Composite Application
- 25.7 Using Business Rules with Oracle ADF Business Components Fact Types
-
26
Using Declarative Components and Task Flows
- 26.1 Introduction to Declarative Components and Task Flows
-
26.2
Introduction to the Oracle Business Rules Editor Declarative Component
- 26.2.1 Using the Oracle Business Rules Editor Component
- 26.2.2 How to Create and Run a Sample Application by Using the Rules Editor Component
- 26.2.3 How to Deploy a Rules Editor Application to a Standalone WLS
- 26.2.4 What You May Need to Know About the Custom Permissions for the Rules Editor Component
- 26.2.5 What You May Need to Know About the Supported Tags of the Rules Editor Component
-
26.3
Introduction to the Oracle Business Rules Dictionary Editor Declarative Component
- 26.3.1 Using the Oracle Business Rules Dictionary Component
- 26.3.2 How to Create and Run a Sample Application by Using the Rules Dictionary Editor Component
- 26.3.3 How to Deploy a Rules Dictionary Application to a Standalone Oracle WebLogic Server
- 26.3.4 What You May Need to Know About the Supported Attributes of the Rules Dictionary Editor Component
- 26.4 Introduction to the Oracle Business Rules Dictionary Editor Task Flow
- 26.5 Localizing the ADF-Based Web Application
- 26.6 Working with Translations
-
25
Getting Started with Oracle Business Rules
-
Part V Using the Human Workflow Service Component
-
27
Getting Started with Human Workflow
- 27.1 Introduction to Human Workflow
-
27.2
Introduction to Human Workflow Concepts
- 27.2.1 Introduction to Design and Runtime Concepts
- 27.2.2 Introduction to the Stages of Human Workflow Design
- 27.3 Introduction to Human Workflow Use Cases
- 27.4 Introduction to Human Workflow Architecture
- 27.5 Human Workflow and Business Rule Differences Between Oracle SOA Suite and Oracle BPM Suite
-
28
Creating Human Tasks
- 28.1 Introduction to Human Tasks
- 28.2 Creating Human Tasks
- 28.3 Configuring Human Tasks
- 28.4 Exiting the Human Task Editor and Saving Your Changes
-
28.5
Associating Human Tasks with BPEL Processes
- 28.5.1 How to Associate a Human Task with a BPEL Process
- 28.5.2 What You May Need to Know About Deleting a Wire Between a Human Task and a BPEL Process
- 28.5.3 How to Define the Human Task Activity Title, Initiator, Priority, and Parameter Variables
- 28.5.4 How to Define the Human Task Activity Advanced Features
- 28.5.5 How to View the Generated Human Task Activity
- 28.5.6 What You May Need to Know About Changing the Generated Human Task Activity
- 28.5.7 What You May Need to Know About Deleting a Partner Link Generated by a Human Task
- 28.5.8 How to Define Outcome-Based Modeling
- 28.5.9 What You May Need to Know About Encoding an Attachment
-
29
Configuring Human Tasks
- 29.1 Accessing the Sections of the Human Task Editor
- 29.2 Specifying the Title, Description, Outcome, Priority, Category, Owner, and Application Context
- 29.3 Specifying the Task Payload Data Structure
-
29.4
Assigning Task Participants
- 29.4.1 How to Specify a Stage Name and Add Parallel and Sequential Blocks
- 29.4.2 How to Assign Task Participants
- 29.4.3 How to Configure the Single Participant Type
- 29.4.4 How to Configure the Parallel Participant Type
- 29.4.5 How to Configure the Serial Participant Type
- 29.4.6 How to Configure the FYI Participant Type
-
29.5
Selecting a Routing Policy
- 29.5.1 How to Customize Tasks Routing
- 29.5.2 How to Specify Advanced Task Routing Using Business Rules
- 29.5.3 How to Use External Routing
- 29.5.4 How to Configure the Error Assignee and Reviewers
- 29.6 Specifying Multilingual Settings and Style Sheets
- 29.7 Specifying What to Show in Task Details in the Worklist
-
29.8
Escalating, Renewing, or Ending the Task
- 29.8.1 Introduction to Escalation and Expiration Policy
- 29.8.2 How to Specify a Policy to Never Expire
- 29.8.3 How to Specify a Policy to Expire
- 29.8.4 How to Extend an Expiration Policy Period
- 29.8.5 How to Escalate a Task Policy
- 29.8.6 How to Specify Escalation Rules
- 29.8.7 How to Specify a Due Date
-
29.9
Specifying Participant Notification Preferences
- 29.9.1 How to Notify Recipients of Changes to Task Status
- 29.9.2 How to Edit the Notification Message
- 29.9.3 How to Set Up Reminders
- 29.9.4 How to Change the Character Set Encoding
- 29.9.5 How to Secure Notifications to Exclude Details
- 29.9.6 How to Display the Oracle BPM Worklist URL in Notifications
- 29.9.7 How to Make Email Messages Actionable
- 29.9.8 How to Send Task Attachments with Email Notifications
- 29.9.9 How to Send Email Notifications to Groups and Application Roles
- 29.9.10 How to Customize Notification Headers
- 29.10 Specifying Access Policies and Task Actions on Task Content
- 29.11 Specifying Restrictions on Task Assignments
- 29.12 Specifying Java or Business Event Callbacks
-
30
Designing Task Forms for Human Tasks
- 30.1 Introduction to the Task Form
- 30.2 Associating the Task Flow with the Task Service
-
30.3
Creating an ADF Task Flow Based on a Human Task
- 30.3.1 How To Create an ADF Task Flow from the Human Task Editor
- 30.3.2 How To Create an ADF Task Flow Based on a Human Task
- 30.3.3 What Happens When You Create an ADF Task Flow Based on a Human Task
- 30.3.4 What You May Need to Know About Having Multiple ADF Task Flows That Contain the Same Element with Different Meta-attributes
-
30.4
Creating a Task Form
- 30.4.1 How To Create an Autogenerated Task Form
- 30.4.2 How to Register the Library JAR File for Custom Page Templates
- 30.4.3 How To Create a Task Form Using the Custom Task Form Wizard
- 30.4.4 How To Create a Task Form Using the Complete Task with Payload Drop Handler
- 30.4.5 How To Create Task Form Regions Using Individual Drop Handlers
- 30.4.6 How To Add the Payload to the Task Form
- 30.4.7 What Happens When You Create a Task Form
- 30.5 Refreshing Data Controls When the Task XSD Changes
- 30.6 Securing the Task Flow Application
- 30.7 Creating an Email Notification
-
30.8
Deploying a Composite Application with a Task Flow
- 30.8.1 How To Deploy a Composite Application with a Task Flow
- 30.8.2 How To Redeploy the Task Form
- 30.8.3 How To Deploy a Task Flow as a Separate Application
-
30.8.4
How To Deploy a Task Form to a non-SOA Oracle WebLogic Server
- 30.8.4.1 Before Deploying the Task Form: Port Changes
- 30.8.4.2 Configuring Unique Cookie Context Paths for the Session Tracking Cookies
- 30.8.4.3 Deploying oracle.soa.workflow.jar to a non-SOA Oracle WebLogic Server
- 30.8.4.4 Defining the Foreign JNDI Provider on a non-SOA Oracle WebLogic Server
- 30.8.4.5 Defining the Foreign JNDI Provider Links on a non-SOA Oracle WebLogic Server
- 30.8.4.6 Including a Grant for bpm-services.jar
- 30.8.4.7 Deploying the Application
- 30.8.5 What Happens When You Deploy the Task Form
- 30.8.6 What You May Need to Know About Undeploying a Task Flow
- 30.9 Displaying a Task Form in the Worklist
- 30.10 Displaying a Task in an Email Notification
- 30.11 Reusing the Task Flow Application with Multiple Human Tasks
-
31
Human Workflow Tutorial
- 31.1 Introduction to the Human Workflow Tutorial
- 31.2 Prerequisites
- 31.3 Creating an Application and a Project with a BPEL Process
- 31.4 Creating the Human Task Service Component
- 31.5 Designing the Human Task
- 31.6 Associating the Human Task and BPEL Process Service Components
- 31.7 Creating a Task Form Project
- 31.8 Deploying the Task Form
- 31.9 Creating an Application Server Connection
- 31.10 Deploying the SOA Composite Application
- 31.11 Initiating the Process Instance
- 31.12 Acting on the Task in Oracle BPM Worklist
-
32
Using Oracle BPM Worklist
- 32.1 Introduction to Oracle BPM Worklist
- 32.2 Logging In to Oracle BPM Worklist
- 32.3 Customizing the Task List Page
- 32.4 Exporting Tasks to Microsoft Excel
- 32.5 Acting on Tasks: The Task Details Page
- 32.6 Approving Tasks
- 32.7 Setting a Vacation Period
- 32.8 Setting Rules
-
32.9
Using the Worklist Administration Functions
- 32.9.1 How To Manage Other Users' or Groups' Rules (as an Administrator)
- 32.9.2 How to Specify the Login Page Realm Label
- 32.9.3 How to Specify the Resource Bundle
- 32.9.4 How to Specify the Language Locale Information
- 32.9.5 How to Specify User Name Format
- 32.9.6 How to Specify a Branding Logo
- 32.9.7 How to Specify the Branding Title
- 32.9.8 How to Choose a Skin
- 32.9.9 How to Enable Customized Applications and Links
- 32.9.10 How to Specify an Image for a Task Action
- 32.9.11 Specifying Additional Process Workspace Settings
- 32.10 Specifying Notification Settings
- 32.11 Using Mapped Attributes (Flex Fields)
- 32.12 Creating Worklist Reports
-
32.13
Accessing Oracle BPM Worklist in Local Languages and Time Zones
- 32.13.1 Strings in Oracle BPM Worklist
- 32.13.2 How to Change the Preferred Language, Display Names of Users, and Time Zone Settings if the Identity Store is LDAP-Based
- 32.13.3 How to Change the Language in Which Tasks Are Displayed
- 32.13.4 How To Change the Language Preferences from a JAZN XML File
- 32.13.5 What You May Need to Know Setting Display Languages in Worklist
- 32.13.6 How To Change the Time Zone Used in the Worklist
-
32.14
Creating Reusable Worklist Regions
- 32.14.1 How to Create an Application With an Embedded Reusable Worklist Region
- 32.14.2 How to Set Up the Deployment Profile
- 32.14.3 How to Prepare Federated Mode Task Flows For Deployment
- 32.14.4 What You May Need to Know About Task List Task Flow
- 32.14.5 What You May Need to Know About Certificates Task Flow
- 32.14.6 What You May Need to Know About the Reports Task Flow
- 32.14.7 What You May Need to Know About Application Preferences Task Flow
- 32.14.8 What You May Need to Know About Mapped Attributes Task Flow
- 32.14.9 What You May Need to Know About Rules Task Flow
- 32.14.10 What You May Need to Know About Approval Groups Task Flow
- 32.14.11 What You May Need to Know About Task Configuration Task Flow
- 32.15 Java Code for Enabling Customized Applications in Worklist Application
-
33
Building a Custom Worklist Client
- 33.1 Introduction to Building Clients for Workflow Services
- 33.2 Packages and Classes for Building Clients
- 33.3 Workflow Service Clients
- 33.4 Class Paths for Clients Using SOAP
- 33.5 Class Paths for Clients Using Remote EJBs
- 33.6 Initiating a Task
- 33.7 Changing Workflow Standard View Definitions
- 33.8 Writing a Worklist Application Using the HelpDeskUI Sample
-
34
Understanding Human Workflow Services
-
34.1
Introduction to Human Workflow Services
- 34.1.1 SOAP, Enterprise JavaBeans, and Java Support for the Human Workflow Services
- 34.1.2 Security Model for Services
- 34.1.3 Task Service
- 34.1.4 Task Query Service
- 34.1.5 Identity Service
- 34.1.6 Task Metadata Service
- 34.1.7 User Metadata Service
- 34.1.8 Task Report Service
- 34.1.9 Runtime Config Service
- 34.1.10 Evidence Store Service and Digital Signatures
- 34.1.11 Task Instance Attributes
-
34.2
Notifications from Human Workflow
- 34.2.1 Contents of Notification
- 34.2.2 Error Message Support
- 34.2.3 Reliability Support
- 34.2.4 Management of Oracle Human Workflow Notification Service
- 34.2.5 How to Configure the Notification Channel Preferences
- 34.2.6 How to Configure Notification Messages in Different Languages
- 34.2.7 How to Send Actionable Messages
- 34.2.8 How to Send Inbound and Outbound Attachments
- 34.2.9 How to Send Inbound Comments
- 34.2.10 How to Send Secure Notifications
- 34.2.11 How to Set Channels Used for Notifications
- 34.2.12 How to Send Reminders
- 34.2.13 How to Set Automatic Replies to Unprocessed Messages
- 34.2.14 How to Create Custom Notification Headers
- 34.3 Assignment Service Configuration
- 34.4 Class Loading for Callbacks and Resource Bundles
-
34.5
Resource Bundles in Workflow Services
- 34.5.1 Task Resource Bundles
- 34.5.2 Global Resource Bundle – WorkflowLabels.properties
- 34.5.3 Worklist Client Resource Bundles
- 34.5.4 Task Detail ADF Task Flow Resource Bundles
- 34.5.5 Specifying Stage and Participant Names in Resource Bundles
- 34.5.6 Case Sensitivity in Group and Application Role Names
- 34.6 Introduction to Human Workflow Client Integration with Oracle WebLogic Server Services
- 34.7 Task States in a Human Task
- 34.8 Database Views for Oracle Workflow
-
34.1
Introduction to Human Workflow Services
-
27
Getting Started with Human Workflow
-
Part VI Using Binding Components
-
35
Getting Started with Binding Components
-
35.1
Introduction to Binding Components
- 35.1.1 SOAP Web Services
- 35.1.2 HTTP Binding Service
- 35.1.3 JCA Adapters
- 35.1.4 Oracle E-Business Suite Adapter
- 35.1.5 Oracle BAM 11g Adapter
- 35.1.6 Oracle B2B
- 35.1.7 Oracle Healthcare Adapter
- 35.1.8 Oracle MFT
- 35.1.9 ADF-BC Services
- 35.1.10 EJB Adapter
- 35.1.11 Direct Binding Adapter
- 35.1.12 REST Binding
- 35.1.13 Cloud Adapters
- 35.2 Introduction to Integrating a Binding Component in a SOA Composite Application
- 35.3 Creating Tokens for Use in the Binding URLs of External References
-
35.1
Introduction to Binding Components
-
36
Integrating REST Operations in SOA Composite Applications
- 36.1 Introduction to REST Support
-
36.2
Creating REST Support in Service and Reference Binding Components
- 36.2.1 How to Configure the REST Binding Component in a SOA Composite Application
- 36.2.2 How to Consume REST-Based Integrations Created in Oracle Integration in SOA Composite Applications
- 36.2.3 How to Configure the REST Adapter Through Shortcuts
- 36.2.4 How to Generate Schemas Manually
- 36.2.5 How to Generate Schemas from Samples
- 36.2.6 How to Use Global Token Variables
- 36.2.7 How to Set REST Header Properties
- 36.2.8 What You May Need to Know About REST Fault Binding
- 36.2.9 What You May Need to Know About Converting a JSON Interchange Format to a REST Schema
- 36.2.10 What You May Need to Know About REST References Calling REST Services in the Same Node
- 36.3 Using JavaScript and JSON in BPEL Components
- 36.4 Testing the REST Adapter with the HTTP Analyzer
- 36.5 Testing and Configuring REST Reference Binding Components in Oracle Enterprise Manager Fusion Middleware Control
-
37
Integrating Enterprise JavaBeans with Composite Applications
- 37.1 Introduction to Enterprise JavaBeans Binding Integration with SOA Composite Applications
-
37.2
Designing an SDO-Based Enterprise JavaBeans Application
- 37.2.1 How to Create SDO Objects Using the SDO Compiler
- 37.2.2 How to Create a Session Bean and Import the SDO Objects
- 37.2.3 How to Create a Profile and an EAR File
- 37.2.4 How to Define the SDO Types with an Enterprise JavaBeans Bean
- 37.2.5 How to Use Web Service Annotations
- 37.2.6 How to Deploy the Enterprise JavaBeans EAR File
- 37.3 Creating an Enterprise JavaBeans Service in Oracle JDeveloper
- 37.4 Designing an Enterprise JavaBeans Client to Invoke Oracle SOA Suite
- 37.5 Specifying Enterprise JavaBeans Roles
- 37.6 Configuring Enterprise JavaBeans Binding Support in the Credential Store Framework
- 38 Using Direct Binding to Invoke Composite Services
-
35
Getting Started with Binding Components
-
Part VII Sharing Functionality Across Service Components
-
39
Oracle SOA Suite Templates and Reusable Subprocesses
- 39.1 Introduction to Oracle SOA Suite Templates
- 39.2 Introduction to Standalone and Inline BPEL Subprocess Invocations
- 39.3 Differences Between Oracle SOA Suite Templates and Reusable Subprocesses
- 39.4 Creating Oracle SOA Suite Templates
- 39.5 Creating Standalone and Inline BPEL Subprocesses in a BPEL Process
-
40
Creating Transformations with the XSLT Map Editor
- 40.1 Introduction to the XSLT Map Editor
-
40.2
Creating an XSLT Map
- 40.2.1 How to Create an XSLT Map
- 40.2.2 How to Create an XSL Map File in Oracle BPEL Process Manager
- 40.2.3 How to Create an XSL Map File from Imported Source and Target Schema Files in Oracle BPEL Process Manager
- 40.2.4 How to Create an XSL Map File in Oracle Mediator
- 40.2.5 What You May Need to Know About Creating an XSL Map File
- 40.2.6 What Happens at Runtime If You Pass a Payload Through Oracle Mediator Without Creating an XSL Map File
- 40.2.7 What Happens If You Receive an Empty Namespace Tag in an Output Message
-
40.3
Editing an XSLT Map in Map View
- 40.3.1 How to Perform a Value Copy by Linking Nodes
- 40.3.2 How to Create an Empty Node in the Output Document
- 40.3.3 How to Set a Literal Text Value for a Target Node
-
40.3.4
How to Add an XSLT Statement
- 40.3.4.1 To Add an XSLT Statement:
- 40.3.4.2 To Add an xsl:text or xsl:variable Statement:
- 40.3.4.3 To Drag and Drop an XSLT statement to a Target Node:
- 40.3.4.4 How to Add Conditional Processing Using xsl:if
- 40.3.4.5 How to Add Conditional Processing Using xsl:choose
- 40.3.4.6 How to Add Loops Using xsl:for-each
- 40.3.4.7 How to Add xsl:sort for an xsl:for-each Statement
- 40.3.4.8 How to Duplicate XSLT Instructions
- 40.3.5 How to Duplicate an Element
- 40.3.6 How to Delete an Element or Attribute
- 40.3.7 How to Remove Mappings from an Element or Attribute
-
40.4
Editing an XSLT Map in XSLT View
- 40.4.1 How to Add a Target Element or Attribute Before Mapping
- 40.4.2 How to Perform a Value Copy by Linking Nodes
- 40.4.3 How to Insert an xsl:valueof Statement
- 40.4.4 How to Set a Literal Text Value for an XSLT Node
- 40.4.5 How to Set a Literal Text Value Using an xsl:text Instruction
- 40.4.6 How to Add XSLT Statements
- 40.4.7 How to Set the Value of an XSLT Expression Attribute
- 40.4.8 How to Duplicate an Element
- 40.4.9 How to Delete an Element or Attribute
- 40.4.10 How to Move an Element
- 40.4.11 How to Remove Mappings from an Element or Attribute
-
40.5
Using XPath Expressions
- 40.5.1 How to Modify an Existing Source to Target Mapping
- 40.5.2 How to Modify an Existing Function XPath Expression in the Canvas Pane
- 40.5.3 How to Create a New Function in the Canvas Pane
- 40.5.4 How to Chain Functions Together
- 40.5.5 How to Remove an XPath Expression
- 40.5.6 How to Import User-Defined Functions
- 40.6 Using Auto Map to Map Complex Nodes
- 40.7 Checking the Completion Status of the Map
- 40.8 Testing the Map
- 40.9 Importing an External XSLT Map
- 40.10 Using Variables and Parameters
- 40.11 Substituting Elements and Types
- 40.12 Using Named Templates
- 40.13 Using Template Rules
- 40.14 Using the Execution View
- 40.15 Debugging the XSLT Map
- 40.16 Troubleshooting Memory Issues
- 40.17 Setting XSL Map Preferences
-
41
Creating Transformations with the XQuery Mapper
- 41.1 Introduction to the XQuery Mapper
- 41.2 Creating an XQuery Map File
-
41.3
Using the XQuery Mapper
- 41.3.1 How to Use Value Mapping to Copy a Leaf Element Value to a Target Leaf Element
- 41.3.2 How to Use Overwrite Mapping to Copy an Element Subtree to the Target Tree
- 41.3.3 How to Use Append Mapping to Copy an Element Subtree to the Target Tree
- 41.3.4 How to Perform Multiple Value Mappings with One Drag and Drop Action
- 41.4 Using XQuery Functions
- 41.5 Using Library Modules
- 41.6 Working with Zones and FLWOR Constructs
- 41.7 Using Type Annotations to Improve XQuery Performance
- 41.8 Testing Your XQuery Map
-
42
Using Business Events and the Event Delivery Network
- 42.1 Introduction to Business Events
- 42.2 Creating Business Events in Oracle JDeveloper
-
42.3
Subscribing to or Publishing a Business Event from an Oracle Mediator Service Component
- 42.3.1 How to Subscribe to a Business Event
- 42.3.2 How to Publish a Business Event
- 42.3.3 What Happens When You Create and Subscribe to a Business Event
- 42.3.4 What Happens When You Publish a Business Event
- 42.3.5 What You May Need to Know About Subscribing to a Business Event
- 42.3.6 What You May Need to Know About Publishing Events Across Domains Using SAF
- 42.3.7 How to Configure a Foreign JNDI Provider to Enable Administration Server Applications to Publish Events to the SOA Server
- 42.3.8 How to Configure the Connection Factory When the Oracle WebLogic Server JMS Runs in the Same Local JVM as the JMS Adapter
- 42.4 Subscribing to or Publishing a Business Event from a BPEL Process Service Component
- 42.5 How to Integrate Oracle ADF Business Component Business Events with Oracle Mediator
-
43
Working with Cross References
- 43.1 Introduction to Cross References
- 43.2 Introduction to Cross Reference Tables
- 43.3 Oracle Data Integrator Support for Cross Referencing
- 43.4 Creating and Modifying Cross Reference Tables
- 43.5 Populating Cross Reference Tables
- 43.6 Looking Up Cross Reference Tables
- 43.7 Deleting a Cross Reference Table Value
-
43.8
Creating and Running the Cross Reference Use Case
-
43.8.1
How to Create the Use Case
- 43.8.1.1 Task 1: How to Configure the Oracle Database and Database Adapter
- 43.8.1.2 Task 2: How to Create an Oracle JDeveloper Application and a Project
- 43.8.1.3 Task 3: How to Create a Cross Reference
- 43.8.1.4 Task 4: How to Create a Database Adapter Service
- 43.8.1.5 Task 5: How to Create EBS and SBL External References
- 43.8.1.6 Task 6: How to Create the Logger File Adapter External Reference
- 43.8.1.7 Task 7: How to Create an Oracle Mediator Service Component
- 43.8.1.8 Task 8: How to Specify Routing Rules for an Oracle Mediator Service Component
- 43.8.1.9 Task 9: How to Specify Routing Rules for the Common Oracle Mediator
- 43.8.1.10 Task 10: How to Configure an Application Server Connection
- 43.8.1.11 Task 11: How to Deploy the Composite Application
- 43.8.2 How to Run and Monitor the XrefCustApp Application
-
43.8.1
How to Create the Use Case
-
43.9
Creating and Running Cross Reference for 1M Functions
-
43.9.1
How to Create the Use Case
- 43.9.1.1 Task 1: How to Configure the Oracle Database and Database Adapter
- 43.9.1.2 Task 2: How to Create an Oracle JDeveloper Application and a Project
- 43.9.1.3 Task 3: How to Create a Cross Reference
- 43.9.1.4 Task 4: How to Create a Database Adapter Service
- 43.9.1.5 Task 5: How to Create an EBS External Reference
- 43.9.1.6 Task 6: How to Create a Logger File Adapter External Reference
- 43.9.1.7 Task 7: How to Create an Oracle Mediator Service Component
- 43.9.1.8 Task 8: How to Specify Routing Rules for an Oracle Mediator Component
- 43.9.1.9 Task 9: How to Specify Routing Rules for the Common Oracle Mediator
- 43.9.1.10 Task 10: How to Configure an Application Server Connection
- 43.9.1.11 Task 11: How to Deploy the Composite Application
-
43.9.1
How to Create the Use Case
-
44
Working with Domain Value Maps
- 44.1 Introduction to Domain Value Maps
- 44.2 Creating Domain Value Maps
- 44.3 Editing a Domain Value Map
- 44.4 Using Domain Value Map Functions
-
44.5
Creating a Domain Value Map Use Case for a Hierarchical Lookup
-
44.5.1
How to Create the HierarchicalValue Use Case
- 44.5.1.1 Task 1: How to Create an Oracle JDeveloper Application and a Project
- 44.5.1.2 Task 2: How to Create a Domain Value Map
- 44.5.1.3 Task 3: How to Create a File Adapter Service
- 44.5.1.4 Task 4: How to Create ProcessOrders Mediator Component
- 44.5.1.5 Task 5: How to Create a File Adapter Reference
- 44.5.1.6 Task 6: How to Specify Routing Rules
- 44.5.1.7 Task 7: How to Configure an Application Server Connection
- 44.5.1.8 Task 8: How to Deploy the Composite Application
- 44.5.2 How to Run and Monitor the HierarchicalValue Application
-
44.5.1
How to Create the HierarchicalValue Use Case
-
44.6
Creating a Domain Value Map Use Case For Multiple Values
-
44.6.1
How to Create the Multivalue Use Case
- 44.6.1.1 Task 1: How to Create an Oracle JDeveloper Application and Project
- 44.6.1.2 Task 2: How to Create a Domain Value Map
- 44.6.1.3 Task 3: How to Create a File Adapter Service
- 44.6.1.4 Task 4: How to Create the LookupMultiplevaluesMediator Mediator
- 44.6.1.5 Task 5: How to Create a File Adapter Reference
- 44.6.1.6 Task 6: How to Specify Routing Rules
- 44.6.1.7 Task 7: How to Configure an Application Server Connection
- 44.6.1.8 Task 8: How to Deploy the Composite Application
- 44.6.2 How to Run and Monitor the Multivalue Application
-
44.6.1
How to Create the Multivalue Use Case
- 44.7 Preloading DVM Cache for Faster First-Use
- 45 Using Oracle SOA Composer with Domain Value Maps
-
39
Oracle SOA Suite Templates and Reusable Subprocesses
-
Part VIII Completing Your Application
- 46 Enabling Security with Policies and Message Encryption
-
47
Deploying SOA Composite Applications
- 47.1 Introduction to Deployment
- 47.2 Deployment Prerequisites
- 47.3 Understanding the Packaging Impact
- 47.4 Anatomy of a Composite
-
47.5
Preparing the Target Environment
- 47.5.1 How to Create Data Sources and Queues
- 47.5.2 How to Create Connection Factories and Connection Pooling
- 47.5.3 How to Enable Security
- 47.5.4 How to Set the Business Flow Instance Name or Composite Instance Name at Design Time
- 47.5.5 How to Deploy Trading Partner Agreements and Task Flows
- 47.5.6 How to Create an Application Server Connection
- 47.5.7 How to Create a SOA-MDS Connection
-
47.6
Customizing Your Application for the Target Environment Before Deployment
-
47.6.1
How to Use Configuration Plans to Customize SOA Composite Applications for the Target Environment
- 47.6.1.1 Introduction to Configuration Plans
- 47.6.1.2 Introduction to a Configuration Plan File
- 47.6.1.3 Introduction to Use Cases for a Configuration Plan
- 47.6.1.4 How to Create a Configuration Plan in Oracle JDeveloper
- 47.6.1.5 How to Create a Configuration Plan with the WLST Utility
- 47.6.1.6 How to Attach a Configuration Plan with ant Scripts
- 47.6.1.7 How to Create Global Token Variables
-
47.6.1
How to Use Configuration Plans to Customize SOA Composite Applications for the Target Environment
-
47.7
Deploying SOA Composite Applications in Oracle JDeveloper
- 47.7.1 How to Deploy a Single SOA Composite in Oracle JDeveloper
- 47.7.2 How to Deploy Multiple SOA Composite Applications in Oracle JDeveloper
- 47.7.3 How to Deploy and Use Shared Data Across Multiple SOA Composite Applications in Oracle JDeveloper
- 47.7.4 How to Deploy an Existing SOA Archive in Oracle JDeveloper
- 47.8 Deploying and Managing SOA Composite Applications with the WLST Utility
-
47.9
Deploying and Managing SOA Composite Applications with ant Scripts
- 47.9.1 How to Use ant to Automate the Testing of a SOA Composite Application
- 47.9.2 How to Use ant to Compile a SOA Composite Application
- 47.9.3 How to Use ant to Package a SOA Composite Application into a Composite SAR File
- 47.9.4 How to Use ant to Deploy a SOA Composite Application
- 47.9.5 How to Use ant to Undeploy a SOA Composite Application
- 47.9.6 How to Use ant to Export a Composite into a SAR File
- 47.9.7 How to Use ant to Export Postdeployment Changes of a Composite into a JAR File
- 47.9.8 How to Use ant to Import Postdeployment Changes of a Composite
- 47.9.9 How to Use ant to Export Shared Data of a Given Pattern into a JAR File
- 47.9.10 How to Use ant to Remove a Top-level Shared Data Folder
- 47.9.11 How to Use ant to Start a SOA Composite Application
- 47.9.12 How to Use ant to Stop a SOA Composite Application
- 47.9.13 How to Use ant to Activate a SOA Composite Application
- 47.9.14 How to Use ant to Retire a SOA Composite Application
- 47.9.15 How to Use ant to Assign the Default Version to a SOA Composite Application
- 47.9.16 How to Use ant to List the Deployed SOA Composite Applications
- 47.9.17 How to Use ant to List All Available Partitions in the SOA Infrastructure
- 47.9.18 How to Use ant to List All Composites in a Partition
- 47.9.19 How to Use ant to Create a Partition in the SOA Infrastructure
- 47.9.20 How to Use ant to Delete a Partition in the SOA Infrastructure
- 47.9.21 How to Use ant to Start All Composites in the Partition
- 47.9.22 How to Use ant to Stop All Composites in the Partition
- 47.9.23 How to Use ant to Activate All Composites in the Partition
- 47.9.24 How to Use ant to Retire All Composites in the Partition
- 47.9.25 How to Use ant to Manage SOA Composite Applications
- 47.10 Deploying SOA Composite Applications from Oracle Enterprise Manager Fusion Middleware Control
-
47.11
Deploying SOA Composite Applications with No Servers Running
- 47.11.1 Offline Deployment Configuration Files
- 47.11.2 How to Deploy SOA Composite Applications and Shared Data with No Server Running
- 47.11.3 What You May Need to Know About Offline Composite Deployment in a Cluster Environment
- 47.11.4 What You May Need to Know About Deploying SOA Composite Applications that Reference Shared Data That is Not in the MDS Repository
- 47.12 Importing XSLT Customizations into a Deployed SOA Composite Application
- 47.13 Postdeployment Configuration
-
47.14
Testing and Troubleshooting
- 47.14.1 Verifying Deployment
- 47.14.2 Initiating an Instance of a Deployed Composite
- 47.14.3 Automating the Testing of Deployed Composites
- 47.14.4 Recompiling a Project After Receiving a Deployment Error
- 47.14.5 Reducing Java Code Size to Resolve Java Compilation Errors
-
47.14.6
Troubleshooting Common Deployment Errors
- 47.14.6.1 Common Oracle JDeveloper Deployment Issues
- 47.14.6.2 Common Configuration Plan Issues
- 47.14.6.3 Deploying to a Managed Oracle WebLogic Server
- 47.14.6.4 Deploying to a Two-Way, SSL-Enabled Oracle WebLogic Server
- 47.14.6.5 Deploying with an Unreachable Proxy Server
- 47.14.6.6 Releasing Locks to Resolve ADF Task Form EAR File Deployment Errors
- 47.14.6.7 Increasing Memory to Recover from Compilation Errors
- 47.14.6.8 Oracle JDeveloper Compilation Error When Property Alias Definition is Missing for a Receive Activity with a Correlation Set
- 47.14.6.9 ADF Binding Service Names Must Be Unique Across All Deployed SOA Composite Applications
- 47.15 Patching Running Instances of a SOA Composite
- 48 Using the Oracle SOA Suite Development Maven Plug-In
- 49 Debugging and Auditing SOA Composite Applications
-
50
Automating Testing of SOA Composite Applications
- 50.1 Introduction to the Composite Test Framework
- 50.2 Introduction to the Components of a Test Suite
- 50.3 Creating Test Suites and Test Cases with the Create Composite Test Wizard
- 50.4 Editing the Contents of Test Cases in Test Mode in the SOA Composite Editor
-
50.5
Testing BPEL Process Service Components
- 50.5.1 Overview of Assertions on BPEL Process Activities
- 50.5.2 Overview of a Fast Forward Action on a Wait Activity
- 50.5.3 Overview of Assert Activity Execution
- 50.5.4 How to Create BPEL Process Service Component Tests
- 50.5.5 How to Create Assertions
- 50.5.6 How to Bypass a Wait Activity
- 50.5.7 How to Specify the Number of Times to Execute an Activity
- 50.6 Deploying and Running a Test Suite
-
Part IX Advanced Topics
-
51
Managing Large Documents and Large Numbers of Instances
-
51.1
Best Practices for Handling Large Documents
-
51.1.1
Use Cases for Handling Large Documents
- 51.1.1.1 Passing Binary Objects as Base64-Encoded Text in XML Payloads
-
51.1.1.2
End-to-End Streaming with Attachments
- 51.1.1.2.1 SOAP with Attachments
- 51.1.1.2.2 Working with Streaming Attachments
- 51.1.1.2.3 Creating Composites that Use MIME Attachments
- 51.1.1.2.4 Performance Overhead and Pass Through Attachments
- 51.1.1.2.5 Properties for Streaming Attachments
- 51.1.1.2.6 Streaming Attachments from the SOA Web Service Binding Layer
- 51.1.1.2.7 Reading and Encoding SOAP Attachment Content
- 51.1.1.2.8 Sending Attachment Streams
- 51.1.1.2.9 Overriding Pass Through Settings for Attachments in Oracle Mediator
- 51.1.1.2.10 Sharing Attachments Using Synchronous Flows
- 51.1.1.2.11 Attachment Options of File/FTP Adapters
- 51.1.1.2.12 Oracle B2B Attachment
- 51.1.1.3 Sending and Receiving MTOM-Optimized Messages to SOA Composite Applications
- 51.1.1.4 Processing Large XML with Repeating Constructs
- 51.1.1.5 Processing Large XML Documents with Complex Structures
- 51.1.2 Limitations on Concurrent Processing of Large Documents
- 51.1.3 JVM Memory Sizing Recommendations for SOA Composite Applications
-
51.1.4
General Tuning Recommendations
- 51.1.4.1 General Recommendations
- 51.1.4.2 Setting Audit Levels from Oracle Enterprise Manager for Large Payload Processing
- 51.1.4.3 Using the Assign Activity in Oracle BPEL Process Manager and Oracle Mediator
- 51.1.4.4 Using XSLT Transformations on Large Payloads (For Oracle BPEL Process Manager)
- 51.1.4.5 Using XSLT Transformations on Large Payloads (For Oracle Mediator)
- 51.1.4.6 Using XSLT Transformations for Repeating Structures
- 51.1.4.7 Processing Large Documents in Oracle B2B
- 51.1.4.8 Setting a Size Restriction on Inbound Web Service Message Size
- 51.1.4.9 Using XPath Functions to Write Large XSLT/XQuery Output to a File System
-
51.1.1
Use Cases for Handling Large Documents
-
51.2
Best Practices for Handling Large Metadata
- 51.2.1 Boundary on the Processing of Large Numbers of Activities in a BPEL Process
- 51.2.2 Using Large Numbers of Activities in BPEL Processes (Without FlowN)
- 51.2.3 Using Large Numbers of Activities in BPEL Processes (With FlowN)
- 51.2.4 Using a Flow With Multiple Sequences
- 51.2.5 Using a Flow with One Sequence
- 51.2.6 Using a Flow with No Sequence
- 51.2.7 Large Numbers of Oracle Mediators in a Composite
- 51.2.8 Importing Large Data Sets in Oracle B2B
- 51.3 Best Practices for Handling Large Numbers of Instances
-
51.1
Best Practices for Handling Large Documents
-
52
Customizing SOA Composite Applications
- 52.1 Introduction to Customizing SOA Composite Applications
-
52.2
Creating the Customizable Composite
- 52.2.1 How to Create Customization Classes
- 52.2.2 How to Create the Customizable Composite
- 52.2.3 How to Add an XSD or WSDL File
- 52.2.4 How to Search for Customized Activities in a BPEL Process
- 52.2.5 What You May Need to Know About Resolving Validation Errors in Oracle JDeveloper
- 52.2.6 What You May Need to Know About Resolving a Sequence Conflict
- 52.2.7 What You May Need to Know About Compiling and Deploying a Customized Application
- 52.3 Customizing the Vertical Application
- 52.4 Customizing the Customer Version
- 52.5 Upgrading the Composite
- 53 Defining Composite Sensors
- 54 Creating Dynamic Business Processes
-
55
Integrating the Spring Framework in SOA Composite Applications
- 55.1 Introduction to the Spring Service Component
- 55.2 Integration of Java and WSDL-Based Components in the Same SOA Composite Application
- 55.3 Creating a Spring Service Component in Oracle JDeveloper
- 55.4 Defining Custom Spring Beans Through a Global Spring Context
- 55.5 Using the Predefined Spring Beans
- 55.6 JAXB and OXM Support
- 55.7 Configuring Groovy and Aspectj Classes with the Spring Service Component
- 55.8 Troubleshooting Spring Errors
-
51
Managing Large Documents and Large Numbers of Instances
- Part X Appendices
-
A
BPEL Process Activities and Services
- A.1 Introduction to Activities and Components
-
A.2
Introduction to BPEL 1.1 and 2.0 Activities
- A.2.1 Tabs Common to Many Activities
- A.2.2 Using the Native Format Builder Wizard Outside of Adapter Configuration
- A.2.3 Assign Activity
- A.2.4 Assert Activity
- A.2.5 Bind Entity Activity
- A.2.6 Call Activity
- A.2.7 Compensate Activity
- A.2.8 CompensateScope Activity
- A.2.9 Create Entity Activity
- A.2.10 Dehydrate Activity
- A.2.11 Dynamic Partner Link Activity
- A.2.12 Email Activity
- A.2.13 Empty Activity
- A.2.14 Exit Activity
- A.2.15 Flow Activity
- A.2.16 FlowN Activity
- A.2.17 forEach Activity
- A.2.18 If Activity
- A.2.19 IM Activity
- A.2.20 Invoke Activity
- A.2.21 Java Embedding Activity
- A.2.22 Partner Link Activity
- A.2.23 Phase Activity
- A.2.24 Pick Activity
- A.2.25 Receive Activity
- A.2.26 Receive Signal Activity
- A.2.27 Remove Entity Activity
- A.2.28 RepeatUntil Activity
- A.2.29 Replay Activity
- A.2.30 Reply Activity
- A.2.31 Rethrow Activity
- A.2.32 Schedule Job
- A.2.33 Scope Activity
- A.2.34 Sequence Activity
- A.2.35 Signal Activity
- A.2.36 SMS Activity
- A.2.37 Switch Activity
- A.2.38 Terminate Activity
- A.2.39 Throw Activity
- A.2.40 Translate Activity
- A.2.41 User Notification Activity
- A.2.42 Validate Activity
- A.2.43 Wait Activity
- A.2.44 While Activity
- A.2.45 XQuery Transform Activity
- A.2.46 XSLT Transform Activity
- A.3 Introduction to BPEL Services
-
B
XPath Extension Functions
-
B.1
Advanced Functions
- B.1.1 batchProcessActive
- B.1.2 batchProcessCompleted
- B.1.3 copyList
- B.1.4 create-nodeset-from-delimited-string
- B.1.5 createDelimitedString
- B.1.6 createEssParameter
- B.1.7 doStreamingTranslate
- B.1.8 doTranslateFromNative
- B.1.9 doTranslateToNative
- B.1.10 format
- B.1.11 genEmptyElem
- B.1.12 generate-guid
- B.1.13 get-content-from-file-function
- B.1.14 getApplicationName
- B.1.15 getAttachmentContent
- B.1.16 getAttachmentProperty
- B.1.17 getChildElement
- B.1.18 getComponentInstanceID
- B.1.19 getComponentName
- B.1.20 getCompositeInstanceID
- B.1.21 getCompositeName
- B.1.22 getCompositeURL
- B.1.23 getECID
- B.1.24 getFaultAsString
- B.1.25 getFaultAsXML
- B.1.26 getFaultName
- B.1.27 getMilestoneName
- B.1.28 getOwnerDocument
- B.1.29 getParentComponentInstanceID
- B.1.30 getRevision
- B.1.31 getTaskReminderDuration
- B.1.32 instanceOf
- B.1.33 lookup-xml
- B.1.34 parseEscapedXML
- B.1.35 parseXML
- B.1.36 processScalableDocumentToNative
- B.1.37 processXSLTAttachmentFromNativeToNative
- B.1.38 processXSLTAttachmentFromNativeToStream
- B.1.39 processXSLTAttachmentToNativeStream
- B.1.40 processXSLTAttachmentToStream
- B.1.41 processXSLTForScalableDocument
- B.1.42 setCompositeInstanceTitle
- B.2 BPEL Extension Functions
-
B.3
BPEL XPath Extension Functions
- B.3.1 addQuotes
- B.3.2 authenticate
- B.3.3 countNodes
- B.3.4 doXSLTransform
- B.3.5 doXSLTransformForDoc
- B.3.6 doc
- B.3.7 formatDate
- B.3.8 generateGUID
- B.3.9 getConfigProperty
- B.3.10 getContentAsString
- B.3.11 getConversationId
- B.3.12 getCreator
- B.3.13 getCurrentDate
- B.3.14 getCurrentDateTime
- B.3.15 getCurrentTime
- B.3.16 getElement
- B.3.17 getInstanceId
- B.3.18 getNodeValue
- B.3.19 getNodes
- B.3.20 getPreference
- B.3.21 getProcessId
- B.3.22 getProcessOwnerId
- B.3.23 getProcessURL
- B.3.24 getProcessVersion
- B.3.25 integer
- B.3.26 listUsers
- B.3.27 lookupUser
- B.3.28 parseEscapedXML
- B.3.29 processXQuery
- B.3.30 processXQuery10
- B.3.31 processXQuery2004
- B.3.32 processXSLT
- B.3.33 readBinaryFromFile
- B.3.34 readBinaryFromFileWithMimeHeaders
- B.3.35 readFile
- B.3.36 search
- B.3.37 toCDATA
- B.3.38 tryToCastToBoolean
- B.3.39 writeBinaryToFile
- B.3.40 getGroupIdsFromGroupAlias
- B.3.41 getUserIdsFromGroupAlias
- B.4 Conversion Functions
- B.5 DVM Functions
- B.6 Database Functions
-
B.7
Date Functions
- B.7.1 add-dayTimeDuration-to-dateTime
- B.7.2 current-date
- B.7.3 current-dateTime
- B.7.4 current-time
- B.7.5 day-from-dateTime
- B.7.6 format-dateTime
- B.7.7 hours-from-dateTime
- B.7.8 minutes-from-dateTime
- B.7.9 month-from-dateTime
- B.7.10 seconds-from-dateTime
- B.7.11 subtract-dayTimeDuration-from-dateTime
- B.7.12 timezone-from-dateTime
- B.7.13 year-from-dateTime
-
B.8
Identity Service Functions
- B.8.1 getDefaultRealmName
- B.8.2 getGroupProperty
- B.8.3 getManager
- B.8.4 getManagerFromManagementChain
- B.8.5 getReportees
- B.8.6 getSupportedRealmNames
- B.8.7 getUserProperty
- B.8.8 getUserRoles
- B.8.9 getUsersInAppRole
- B.8.10 getUsersInGroup
- B.8.11 isUserInAppRole
- B.8.12 isUserInRole
- B.8.13 lookupGroup
- B.8.14 lookupUser
- B.9 Logical Functions
- B.10 Mathematical Functions
- B.11 Node Set Functions
-
B.12
String Functions
- B.12.1 compare
- B.12.2 compare-ignore-case
- B.12.3 concat
- B.12.4 contains
- B.12.5 create-delimited-string
- B.12.6 ends-with
- B.12.7 format-string
- B.12.8 get-content-as-string
- B.12.9 get-localized-string
- B.12.10 index-within-string
- B.12.11 last-index-within-string
- B.12.12 left-trim
- B.12.13 lower-case
- B.12.14 matches
- B.12.15 normalize-space
- B.12.16 right-trim
- B.12.17 starts-with
- B.12.18 string-length
- B.12.19 substring
- B.12.20 substring-after
- B.12.21 substring-before
- B.12.22 translate
- B.12.23 upper-case
-
B.13
Workflow Service Functions
- B.13.1 clearTaskAssignees
- B.13.2 createWordMLDocument
- B.13.3 dynamicTaskAssign
- B.13.4 getNotificationProperty
- B.13.5 getNumberOfTaskApprovals
- B.13.6 getPreviousTaskApprover
- B.13.7 getTaskAttachmentByIndex
- B.13.8 getTaskAttachmentByName
- B.13.9 getTaskAttachmentContents
- B.13.10 getTaskAttachmentsCount
- B.13.11 getTaskResourceBundleString
- B.14 XREF Functions
-
B.15
Building XPath Expressions in the Expression
Builder in Oracle JDeveloper
- B.15.1 How to Use the Expression Builder
- B.15.2 Introduction to the XPath Building Assistant
- B.15.3 How to Use the XPath Building Assistant
- B.15.4 Using the XPath Building Assistant in the XSLT Mapper
- B.15.5 Function Parameter Tool Tips
- B.15.6 Syntactic and Semantic Validation
- B.15.7 Creating Expressions with Free Form Text and XPath Expressions
- B.15.8 Using Double Slashes for Directory Paths in XPath Functions on Windows Can Cause Errors
- B.16 Creating User-Defined XPath Extension Functions
-
B.1
Advanced Functions
- C Deployment Descriptor Properties
- D Understanding Sensor Public Views and the Sensor Actions XSD
- E Propagating Normalized Message Properties Through Message Headers
- F Interfaces Implemented By Rules Dictionary Editor Task Flow
-
G
Oracle SOA Suite Configuration Properties Road Map
- G.1 Oracle BPEL Process Manager Deployment Descriptor Properties
- G.2 Normalized Message Header Properties
- G.3 SOA Composite Application Properties
- G.4 Fault Policy and Adapter Rejected Message Properties
- G.5 Oracle B2B System Properties
- G.6 Oracle Healthcare Properties
- G.7 Oracle Business Activity Monitoring Properties
-
G.8
Oracle Enterprise Manager Fusion Middleware Control Property Pages
- G.8.1 SOA Infrastructure Properties
- G.8.2 Oracle BPEL Process Manager Properties
- G.8.3 Human Workflow Notification and Task Service Properties
- G.8.4 Oracle Mediator Properties
- G.8.5 Cross Reference Properties
- G.8.6 Oracle B2B Properties
- G.8.7 Service and Reference Binding Component Properties
- G.8.8 Global Token Variables and Automatic Database Purging Properties
- G.9 System MBean Browser Advanced Properties
- H Working with Large Schemas in the XSLT Editor