JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Java CAPS BPEL Designer and Service Engine User's Guide     Java CAPS Documentation
search filter icon
search icon

Document Information

BPEL Designer and Service Engine User's Guide

Overview

The JBI Runtime Environment

To View the Installed or Deployed JBI Components

The BPEL Designer

The BPEL Service Engine

The Composite Application Project

BPEL Designer and Service Engine Features

BPEL Service Engine Features

Supported WS-BPEL 2.0 Constructs

BPEL Service Engine and Oracle SOA Suite

Understanding the BPEL Module Project

Creating Sample Processes in the BPEL Designer

A Synchronous Sample Process

An Asynchronous Sample Process

Travel Reservation Service Sample

Creating a Sample BPEL Module Project

Navigating in the BPEL Designer

The BPEL Designer Window

The BPEL Editor Views

Cloning Document Views

Element Documentation and Report Generation

Creating Documentation for an Element

Generation a Report

The Navigator Window

XML View

Logical View

The Properties Window

Scrolling

Collapsing and Expanding Process Blocks in the Diagram

To Collapse and Expand a Process Block

Zooming In and Out of the Diagram

Printing BPEL Diagrams and Source Files

To Preview and Print a BPEL Diagram or Source File

To Customize Print Options

To Customize Page Settings

Creating a BPEL Module Project

Starting GlassFish

To Check the Status of the GlassFish V2 Application Server in the NetBeans IDE

To Register the GlassFish V2 Application Server with the NetBeans IDE

To Start the GlassFish V2 Application Server in the NetBeans IDE

Creating a new BPEL Module Project

To Create a BPEL Module Project

Creating the XML Schema and the WSDL Document

Creating a BPEL Process Using the BPEL Designer

To Create the BPEL Process

Creating a Composite Application Project

To Create a New Composite Application Project

Building and Deploying the Composite Application Project

To Build and Deploy the Composite Application Project

Testing the Composite Application

Test the HelloWorldApplication Composite Application Project

Summary

Developing a BPEL Process Using the Diagram

The BPEL Diagram

Configuring Element Properties in the Design View

Finding Usages of BPEL Components

To Find Usages of a BPEL Component

Saving Your Changes

The BPEL Designer Palette Elements

Drop-Zones

The Process Element

Adding BPEL Components to the Process

BPEL Process Properties

The Web Service Elements

Using the Invoke Element

Usage

Invoke Properties

Correlations

Using the Receive Element

Usage

Receive properties

Correlations

Using the Reply Element

Usage

Reply Properties

Correlations

Using the Partner Link Element

Partner Link Types and Roles

Usage

Partner Link Properties

Partner Link Layout

Dynamic Partner Links and Dynamic Addressing

The Basic Activities

Using the Assign Element

Usage

Assign Element Properties

Using the JavaScript Element

Usage

JavaScript Element Properties

Using the Validate Element

Usage

Validate Element Properties

Using the Empty Element

Usage

Empty Element Properties

Using the Wait Element

Usage

Wait Element Properties

Using the Throw Element

Usage

Throw Element Properties

Using the Rethrow Element

Usage

ReThrow Element Properties

Using the Exit Element

Usage

Exit Element Properties

Using the Compensate Element

Usage

Compensate Element Properties

Using the CompensateScope Element

Usage

CompensateScope Element Properties

The Structured Activities

Using the If Element

Usage

Adding an Else If Branch to the If Element

Adding an Else Branch to the If Element

Reordering Else If Branches

If Element Properties

Using the While Element

Usage

While Element Properties

Using the Repeat Until Element

Usage

Repeat Until Element Properties

Using the For Each Element

Usage

For Each Element Properties

Using the Pick Element

Usage

Adding an On Alarm branch

Pick Element Properties

Using the Flow Element

Usage

Adding Branches to the Flow Element

Changing the Order of Elements inside Flow

Flow Element Properties

Using the Sequence Element

Usage

Adding Child Activities to the Sequence

Changing the Order of Elements inside Sequence

Sequence Element Properties

Using the Scope Element

Usage

Scope Element Properties

Variables

To Define a Variable

To Edit a Variable

Using the BPEL Mapper

About the BPEL Mapper

To Open the BPEL Mapper Window

Creating BPEL Mappings

To Create a Mapping Without Using any Functions

To Use a Function in a Mapping

To Delete a Link or Function in a Mapping

Working with Predicates

To Create a Predicate

To Edit a Predicate

To Delete a Predicate

XPath Function Reference

Operator

Boolean

String

Nodes

Number

Date & Time

BPEL

Mapping Examples

Assign Activity Scenario

If Activity Scenario

Predicate Scenario

Using Type Cast and Pseudo-Components

Type Cast

Pseudo-Component

Type Cast and Validation

Type Cast and Pseudo Component Limitations

Using Normalized Message Properties

Using Normalized Message Properties in a BPEL Process

Using Predefined Normalized Message Properties in a BPEL Process

To Use Predefined Normalized Message Properties in a BPEL Process

Adding Additional Normalized Message Properties to a BPEL Process

To Add a Normalized Message Property Shortcut to a BPEL Process

To Edit an NM Property Shortcut

To Delete an NM Property Shortcut

To Add a Normalized Message Property to a BPEL Process

To Delete an NM Property

BPEL Code Generation Using NM Properties

General Normalized Message Properties

Binding Component Specific Normalized Message Properties

Using Handlers

Using a Fault Handler

When to Use

Usage

Catch Element

Catch Element Properties

Catch All Element

Using an Event Handler

When to Use

Usage

On Event Element

Usage

On Alarm Element

On Alarm Element Properties

Using a Compensation Handler

When to Use

To Add a Compensation Handler to Scope or Invoke Elements

Using a Termination Handler

When to Use

To Add a Termination Handler to Scope or Process Elements

Using Correlation

Understanding Correlation. Using the Correlation Wizard

Elements That Use and Express Correlation

Defining Correlation Using the Correlation Wizard

Validation

Validation Criteria

Validation Types

Notifications

The Output window

The Design view

The Navigator window

BPEL Process Logging and Alerting

Defining Logging

To Log the Variable Value

To Set the Log Level for the BPEL Service Engine

To View the Log File

Defining Alerting

Configuring the BPEL Service Engine Runtime Properties

Accessing the BPEL Service Engine Runtime Properties

Runtime Property Descriptions

BPEL Service Engine Deployment Artifacts

Testing and Debugging BPEL Processes

Testing a BPEL Process

To Add a Test Case and Bind it to a BPEL Operation

To Set the Test Properties

To Customize Test Input

To Run the Test Cases

Looking at Test Case Results

Debugging BPEL Processes

Steps in Debugging BPEL Processes

Starting and Finishing a BPEL Debugging Session

Using Breakpoints to Debug BPEL Processes

Debugging Commands

To disable a breakpoint

Group operations over breakpoints

Monitoring Execution of BPEL Processes

BPEL Debugger Windows

Sessions Window

BPEL Process Instances Window

Correlation Sets and Faults information

Local Variables Window

Watches Window

BPEL Process Execution Window

BPEL Partner Links Window

BPEL Debugger Console Messages

Monitoring the BPEL Service Engine

Installing the BPEL Monitor API and Command Line Monitoring Tool

To Install the Monitoring Tool

Using the BPEL Monitor Command Line Tool

To Use the BPEL Monitor Command Line Tool

Command Usage Pattern

More Information

Configuring Quality of Service (QOS) Properties, Throttling, and Redelivery

Configuring the Quality of Service Properties

To Access the Config QOS Properties Editor

Quality of Service Properties

Configuring Message Throttling

Configuring an Endpoint for Throttling

Configuring Redelivery

Using Dynamic Partner Links and Dynamic Addressing

Using a Literal to Construct an Endpoint

Using an Existing Partner Link's Endpoint

Using an Incoming Message to Extract the Endpoint

Using a Database Query to Provide an Endpoint

Sending Service Endpoint References

Configuring Persistence for the BPEL Service Engine

Setting the JVM Classpath to the Database JDBC Drivers

To Set the GlassFish JVM Classpath Settings

Configuring the User and Database for Persistence

Derby (JavaDB)

Oracle

MySQL

Setting max_allowed_packet

Creating an XA Connection Pool and a JDBC Resource

To Create an XA Connection Pool

Create a New JDBC Resource

Creating a Non-XA Connection Pool and JDBC Resource

Enabling Persistence for the BPEL Service Engine

To Enable Persistence for the BPEL Service Engine

Truncating and Dropping Tables

Drop and Truncate Scripts

Configuring Failover for the BPEL Service Engine

Failover Considerations

BPEL BluePrints

Troubleshooting

Using BPEL Schemas Different from the BPEL 2.0 Specification

Service Endpoint Conflict

Relationship of Service Endpoint to Test Cases

Troubleshooting Port Numbers

GlassFish V2 Application Server HTTP Port

Travel Reservation Service Endpoint Conflict

Change URLs

Test Run

Test Run Failures

Disabling Firewalls when Using Servers

Required Correlation Set Usage is Not Detected by the Validation System

Configuring the BPEL Service Engine Runtime Properties

The BPEL Service Engine runtime properties can be configured from the NetBeans IDE, or from a command prompt (command line interface) during installation.

Configuration Properties are Grouped by Purpose

The configuration properties are grouped together for specific purposes.

Accessing the BPEL Service Engine Runtime Properties

To display or edit the properties in the NetBeans IDE, do the following:

  1. From the Services tab of the NetBeans IDE, expand the Servers node.

  2. Start your application server, for example GlassFish v2. To do this, right-click your application server and select Start from the shortcut menu.

  3. Under the application server, expand the JBI -> Service Engines nodes and select the BPEL Service Engine. The current BPEL Service Engine properties are displayed at the right side of the NetBeans IDE. You can also double-click the BPEL Service Engine to open a properties window.

  4. Edit the properties as needed. To apply any changes you make to the runtime BPEL Service Engine properties, stop and restart the BPEL Service Engine.

    image:This window displays the BPEL Service Engine properties and their default settings.

Runtime Property Descriptions

The following table include descriptions for the BPEL Service Engine runtime properties

Property Name
Description
Default Value
General Properties
Description
Description of the JBI Component
This is a bpel service engine.
Name
Name of the JBI Component. Specifies a unique name in the JBI environment. If you are installing more than one BPEL Service Engine in a JBI environment, make sure that each is unique. This can be changed in the descriptor (jbi.xml) for the component. When the service unit deploys the component, it is matched with target component name defined in its descriptor – jbi.xml
sun-bpel-engine
State
State of the JBI Component. Started, Stopped, or Shutdown
Started
Type
Type of the JBI Component (service-engine or binding-component)
service-engine
Identification Properties
Build Number
Date and time stamp for the current build
<build_number>
Spec Version
BPEL specification fully supported by this build
<spec_version>
Configuration
Debug Enabled
Specifies whether the debugger can be used. A Selected the checkbox indicates that you can attach the debugger and debug the business process definition
Select the checkbox to enable. The default is unchecked
Debug Port
Specifies the port number at which the BPEL Service Engine listens for the debugger UI to connect. The default value is sufficient in most cases. If more than on instance of the BPEL Service Engine is running on the same computer, make sure that unique, non-conflicting ports are assigned to each. Do not allow other applications to use these assigned ports
3343
Persistence Enabled
When the checkbox is checked, persistence is enabled. The BPEL Service Engine persists the state of the business process instance at the configured data source for recovery in the event of a crash
Select the checkbox to enable. The default is unchecked
Non XA Data Source Name
Specifies the non-XA data source where the BPEL Service Engine persists the state of the business process, to be used for recovery in the event of a crash
Example: jdbc/bpelseNonXA
XA Data Source Name
Specifies the XA data source where the BPEL Service Engine persists the state of the business process, to be used for recovery in the event of a crash
Example: jdbc/bpelseXA
Number of Threads
Specifies the number of threads allowed to execute BPEL definitions. Configure this to equal the number of CPUs for the system to achieve maximum throughput
10
Lease Renewal Interval
This property is only used for clustered environments. It specifies the interval (in seconds) at which the BPEL Service Engine renews its lease to continue to own the business process instance it is currently executing
60 (seconds)
Life Span of Waiting Request
Specifies the life span of a request after it is received. If the request is not consumed within the specified time, the BPEL Service Engine responds with an error for that request. The time is specified in seconds. A value of "0" indicates that the life span is indefinite
0
Monitoring Enabled
Specifies whether the Service Engine business process instance and activities at the configured data source are monitored
Select the checkbox to enable. The default is unchecked
Monitoring Variable Enabled
Specifies whether the Service Engine enables changes to the monitoring variable value at the configured data source. This property is only applicable when Monitoring Enabled is checked
Select the checkbox to enable. The default is unchecked
KPI Enabled
Specifies whether the Service Engine posts real-time KPI (key performance indicator) events
Select the checkbox to enable. The default is unchecked
Transformation Engine
Specifies which transformation processor is used to execute XSL stylesheets. The choices are XSLT_1_0 and XSLT_2_0
XSLT_1_0
Statistics
Activated Endpoints
The number of activated endpoints
0
Active Exchanges
The number of active exchanges
0
Avg. Component Time
The average message exchange component time in milliseconds
0
Avg. D.C. Time
The average message exchange delivery channel time in milliseconds
0
Avg. Msg. Service Time
The average message exchange message service time in milliseconds
0
Avg. Response Time
The average message exchange response time in milliseconds
0
Completed Exchanges
The total number of completed exchanges
0
Error Exchanges
The total number of error exchanges
0
Received Dones
The total number of received dones
0
Received Errors
The total number of received errors
0
Received Faults
The total number of received faults
0
Received Replies
The total number of received replies
0
Received Requests
The total number of received requests
0
Sent Dones
The total number of sent dones
0
Sent Errors
The total number of sent errors
0
Sent Faults
The total number of sent faults
0
Sent Replies
The total number of sent replies
0
Sent Requests
The total number of sent requests
0
Up Time
The up time of this component in milliseconds
0
Loggers
Specifies the user-designated level of logging for each event.

Each logger can be set to record information at any of the following levels:

  • FINEST: provides highly detailed tracing

  • FINER: provides more detailed tracing

  • FINE: provides basic tracing

  • CONFIG: provides static configuration messages

  • INFO: provides informative messages

  • WARNING: messages indicate a warning

  • SEVERE: messages indicate a severe failure

  • OFF: no logging messages

BPEL Model (independent)
com.sun.bpel.model.impl
INFO
sun-bpel-engine
com.sun.jbi.engine.bpel
INFO
Service Unit Manager
com.sun.jbi.engine.bpel.BPELSEDeployer
INFO
BPELSEInOutThread
com.sun.jbi.engine.bpel.BPELSEInOutThread
INFO
EngineChannel
com.sun.jbi.engine.bpel.EngineChannel
INFO
DeploymentLookup
com.sun.jbi.engine.bpel.com.sun.jbi.common.qos.descriptor.DeploymentLookup
INFO
MessagingChannel
com.sun.jbi.engine.bpel.com.sun.jbi.common.qos.messaging.MessagingChannel
INFO
BPELInterpreter
com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter
INFO
BPEL Process Manager
com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl
INFO
BPEL Cluster Manager
com.sun.jbi.engine.bpel.core.bpel.engine.impl.ClusterManager
INFO
BPEL Scalability Manager
com.sun.jbi.engine.bpel.core.bpel.engine.impl.ScalabilityManager
INFO
BPEL Assignment
com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.AssignUnitImpl
INFO
BPEL State Manager
com.sun.jbi.engine.bpel.core.bpel.persist.impl.StateManagerImpl
INFO