Skip Headers
Oracle® BPEL Process Manager Quick Start Guide
10g Release 2 (10.1.2)
B15604-02
  Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index

Previous
Previous
Next
Next
 

1 Getting Started with the Oracle BPEL Process Manager

This chapter provides an overview of how the business process execution language (BPEL) and Oracle BPEL Process Manager enable you to design service-oriented architecture (SOA)-based applications by developing synchronous and asynchronous services into end-to-end BPEL process flows. This chapter also describes how to install and start the Oracle BPEL Process Manager, Oracle BPEL Server, and other key components.

This chapter contains the following topics:

1.1 BPEL: The Cornerstone of SOA

Many companies are looking at Web services and SOA as a method for addressing the integration requirements involved in building connected applications. While SOA has existed for over a decade, there was confusion about which interfaces to adopt. BPEL and Web service standards solve this dilemma by addressing common application requirements in an open, portable, and standard way. SOA optimizes business performance by using existing resources and minimizing the cost of deploying new applications. Enterprises adopting these standards and architectural approaches achieve a significant return on investment (ROI) from using the same standards-based approach to building connected applications that they used for building Web applications with Java/Java 2 Platform, Enterprise Edition (J2EE).

Making Web services work is a two-step process:

  1. Publish the services.

    Publishing a service involves taking a function within an existing application or system and making it available in a standard way.

  2. Compose, or orchestrate, the services into business flows.

    Orchestration involves composing multiple services into an end-to-end business process.

Web services standards, including web services description language (WSDL), extensible markup language (XML), and simple object access protocol (SOAP), have emerged as an effective and highly interoperable platform for publishing services. In addition, high performance binding frameworks enable enterprises to access legacy systems and native Java code without having to wrap them in a SOAP interface.

1.1.1 BPEL Concepts

BPEL is emerging as the clear standard for composing multiple synchronous and asynchronous services into collaborative and transactional process flows. BPEL benefits from over 15 years of research that improves upon its predecessor languages of XLANG and WSFL. BPEL provides the following features:

  • Web services/WSDL as component model

  • XML as data model (data loose-coupling)

  • Synchronous and asynchronous message exchange patterns

  • Deterministic and nondeterministic flow coordination

  • Hierarchical exception management

  • Long-running unit of work/compensation

Since the BPEL specification was submitted to the Organization for the Advancement of Structured Information Standards (OASIS) in March 2003, it has gained the support of nearly every major industry vendor. This provides a great benefit to enterprises that can now implement their business processes in a standard and portable way, avoiding vendor-specific rules to a degree not previously possible.

1.2 Oracle BPEL Process Manager

This section contains these topics:

1.2.1 Introduction to Oracle BPEL Process Manager

Oracle BPEL Process Manager provides a user-friendly and reliable solution for designing, deploying, and managing BPEL business processes. Oracle BPEL Process Manager consists of the key components shown in Figure 1-1.

Figure 1-1 Oracle BPEL Process Manager

Description of Figure 1-1  follows
Description of "Figure 1-1 Oracle BPEL Process Manager"

Oracle BPEL Process Manager includes JDeveloper BPEL Designer, which extends the functionality of Oracle JDeveloper to enable you to model, edit, and design business processes using BPEL. JDeveloper BPEL Designer provides a graphical and user-friendly way to build BPEL processes. What is unique about JDeveloper BPEL Designer is that it uses BPEL as its native format. This means that processes built with JDeveloper BPEL Designer are 100% portable. JDeveloper BPEL Designer also enables you to view and modify the BPEL source without decreasing the usefulness of the tool. The core BPEL engine provides the most mature, scalable, and robust implementation of a BPEL server available today. Oracle BPEL Process Manager executes standard BPEL processes. Oracle BPEL Process Manager also provides a dehydration capability that enables the states of long-running flows to be automatically maintained in a database, thus enabling clustering for both fail over and scalability. Oracle BPEL Server uses an underlying J2EE application server, with support for most major commercial application servers and a bundled version available.The built-in integration services enable you to use advanced connectivity and transformation capabilities of standard BPEL processes. These capabilities include support for XSLT and XQuery transformation, and bindings to hundreds of legacy systems through Java connector architecture (JCA) adapters and native protocols. A user task service is provided as a built-in BPEL service to enable the integration of people and manual tasks into BPEL flows.The extensible WSDL binding framework enables connectivity to protocols and message formats other than SOAP. Bindings are available for JMS, e-mail, JCA, HTTP GET, HTTP POST, and many other protocols enabling simple connectivity to hundreds of back-end systems.

Oracle BPEL Console provides a mature Web-based interface for management, administration, and debugging of processes deployed to Oracle BPEL Server. Audit trails and process history and reporting information are automatically maintained and available through both Oracle BPEL Console and a Java API.

1.2.2 How Is Oracle BPEL Process Manager Different?

Oracle BPEL Process Manager provides the following key differences:

  • The power of an open standard

    By capturing your business processes in BPEL, you protect your intellectual property and investments while avoiding vendor lock-in. BPEL is to business process management what SQL is to data management.

  • Unparalleled visibility and administration

    Oracle BPEL Console reduces the cost and complexity of deploying and managing your business processes. Visually monitor the execution of each BPEL process, drill down into the audit trail and view the details of each conversation, or debug a running flow against its BPEL implementation.

  • Open and flexible binding framework

    You can orchestrate XML Web services, and also Java/J2EE components, portals, JCA interfaces, and Java message service (JMS) destinations. You can tie into back-end systems. You can use your Java skills and application server investments.

1.2.3 Oracle BPEL Process Manager Feature Summary

Oracle BPEL Process Manager includes the following features:

  • JDeveloper BPEL Designer

    • Native BPEL support

    • Drag-and-drop process modeler

    • Universal description, discover, and integration (UDDI) and Web services inspection language (WSIL) service browser

    • Visual XPath editor

    • One-click build and deploy

  • Oracle BPEL Console

    • Visual monitoring

    • Auditing

    • BPEL debugging

    • Process versioning

    • In-flight administration

    • Process performance monitoring statistics

    • Partitioning/domains

  • Built-in integration services

    • Java embedding

    • E-mail and JMS messaging services

    • Extensible style sheet language transformation (XSLT) and XQuery transformation services

    • Workflow tasks and portal integration

    • Extensible WSIF binding framework

  • Oracle BPEL Server

    • Comprehensive BPEL version 1.1

    • Synchronous and asynchronous messaging

    • Context dehydration

    • Advanced exception management

    • Side-by-side versioning

    • Large XML documents

1.3 Installing Oracle BPEL Process Manager for Developers

Follow these instructions to install Oracle BPEL Process Manager for Developers. After completing installation, Oracle recommends that you visit the following URL to determine if any patches also require installation:

http://www.oracle.com/technology/bpel

  1. Ensure that you meet the following requirements:

    Element Requirement
    Operating system Windows XP, Windows 2000 with Service Pack 3, Windows 2003 with Service Pack 1, Sun SPARC Solaris version 8 and 9, Red Hat Enterprise Linux AS/ES 2.1 and 3.0, or SUSE Linux Enterprise Server 8 and 9
    Disk space 1 GB
    Memory 512 MB RAM minimum (1 GB preferred)
    Swap space 1535 MB minimum
    Web browser Internet Explorer 6.0 or Mozilla Firefox 1.0.4
    Monitor Configured to display at least 256 colors
    Large display settings If you configure your Windows environment to use display settings of large fonts and large size DPI settings (120 DPI), you must configure JDeveloper BPEL Designer after installation. This ensures that all BPEL elements correctly display in JDeveloper BPEL Designer. Perform the following procedures:
    1. Right-click in JDeveloper BPEL Designer.

    2. Select Diagram Properties.

    3. Disable Use Inline Editors.


  2. If installing on Solaris or Linux, see the appropriate Oracle Application Server Installation Guide for each operating system for instructions on:

    • Setting the mount point for the CD-ROM

    • Starting Oracle Universal Installer

  3. Insert the CD-ROM.

  4. Start Oracle Universal Installer from the bpel directory at the root of the CD-ROM:

    On... Do This...
    Solaris or Linux Enter the following command at the operating system prompt:

    ./runInstaller

    Windows Click setup.exe.

    The Welcome screen appears.

  5. Click Next.

    The Specify File Locations screen appears.

  6. Create a new Oracle home name and directory path in which to install Oracle components in the Destination fields. Do not use an existing Oracle home name and directory path. For example, enter the following:

    Name: OraBPELPM
    Path: c:\OraBPELPM
    
    

    Do not change the directory path in the Source field. This is the location of installation files.

  7. Click Next.

    The Select Installation Type screen appears.

    Description of install.gif follows
    Description of the illustration install.gif

    The following installation types are available:

    Product Description
    BPEL Process Manager for Developers Installs an Oracle JDeveloper-based environment for modeling, editing, designing, and running business processes using BPEL. Oracle BPEL Server and Oracle BPEL Console are also installed.
    BPEL Process Manager for OracleAS Middle Tier Installs a BPEL server infrastructure for running BPEL processes that you design. This type does not install JDeveloper BPEL Designer. This type requires an Oracle Application Server 10g J2EE middle tier be installed in the chosen Oracle home directory.

    See Also: Oracle Application Server Integration Installation Guide for instructions on installing this type


  8. Select BPEL Process Manager for Developers.

  9. Click Next.

    The Specify Outgoing HTTP Proxy Information window appears.

  10. If your host is located behind a fire wall, you may need to route outgoing HTTP connections through a proxy server. Enter the following information. If you are directly connected to the Internet or do not want to configure proxy information now, click Next.

    Field Description Example
    HTTP Proxy Host Enter the name of the proxy server host. www-proxy.us.acme.com
    HTTP Proxy Port Enter the port number of the proxy server host. 80
    Bypass proxy for addresses Enter an address that bypasses the proxy. *.us.acme.com;us.acme.com<local>

  11. Review specific details, including the space requirements to ensure that you have sufficient disk space.

  12. Click Install.

  13. Click Exit when installation completes and confirm when prompted.

  14. Visit the following URL to determine if any patches also require installation:

    http://www.oracle.com/technology/bpel
    

1.3.1 Directory Structure

After completing installation, the directory structure shown in Table 1-1 is created:

Table 1-1 Directory Structure

Directory Description

cfgtoollogs

Contains postinstallation configuration tool log files.

diagnostics

Contains an Oracle Universal Installer .xml file.

integration

Contains the following subdirectories:

  • jdev

  • Contains JDeveloper BPEL Designer files and directories, including the workspace and project directories (under jdev\jdev\mywork) in which your BPEL processes are created and designed.

  • orabpel

  • Contains Oracle BPEL Process Manager files and directories, including the samples\demos and samples\utils directories from which you start Web services for the tutorials in this guide. The samples\tutorials directory also provides additional tutorials.

inventory

Contains Oracle Universal Installer installation inventory files.

jdk

Contains the required Java Developer's Kit version.

jre

Contains the required Java Runtime environment files.

lib

Contains library files.

Opatch

Contains path files.

oui

Contains Oracle Universal Installer files.

perl

Contains required Perl script files.


1.4 Starting Oracle BPEL Process Manager Components

Follow the instructions in Table 1-2 to start and stop Oracle BPEL Process Manager components.

Table 1-2 Starting and Stopping Oracle BPEL Process Manager Components

To Access The... On Windows... On UNIX...

Oracle BPEL Server

To start Oracle BPEL Server:

Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > Start BPEL PM Server

To stop Oracle BPEL Server:

Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > Stop BPEL PM Server

To start Oracle BPEL Server:

From $ORACLE_HOME/integration/orabpel/bin:

startorabpel.sh

To stop Oracle BPEL Server:

From $ORACLE_HOME/integration/orabpel/bin:

shutdownorabpel.sh

JDeveloper BPEL Designer


Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > JDeveloper BPEL Designer to start JDeveloper BPEL Designer, or use the shortcut icon that is placed on your desktop.

$ORACLE_HOME/integration/jdev/jdev/bin/jdev

Oracle BPEL Console


You must first start Oracle BPEL Server.

To start Oracle BPEL Console:

  1. Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > BPEL Console

You can also start Oracle BPEL Console using the URL for your installation, which can found in bpelsetupinfo.txt.

First start Oracle BPEL Server.

To start Oracle BPEL Console:

  • Log on to the URL for your installation, which can found in bpelsetupinfo.txt.

Developer Prompt

Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > Developer Prompt to open up a command prompt at the Oracle_Home\integration\orabpel\samples directory. This enables you to easily access demonstrations and start any required Web services.

Setting Developer Prompt in Bourne shell:

$ ORACLE_HOME=/home/oracle/installs/midtier

$ export ORACLE_HOME

$ PATH=$ORACLE_HOME/integration/orabpel/bin:$PATH

$ export PATH

Oracle BPEL Process Manager Samples and Tutorials

For details about BPEL samples and additional tutorials available for use:

Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > Getting Started with Samples

Log into the following URL:

$ORACLE_HOME/integration/orabpel/samples/sampleshome.html

Sample Worklist Application

To access the login window for Oracle BPEL Worklist Application:

Select Start > All Programs > Oracle - Oracle_Home > Oracle BPEL Process Manager 10.1.2 > Sample Worklist Application

You may also start Oracle BPEL Worklist Application using the URL for your installation, which is found in bpelsetupinfo.txt.

First start Oracle BPEL Server.

To start Oracle BPEL Worklist Application:

  • Log on to the URL for your installation, which is found in bpelsetupinfo.txt.



See Also:

Oracle BPEL Process Manager Order Booking Tutorial for a tutorial that uses Oracle BPEL Worklist Application

1.5 Connecting to Oracle BPEL Server

When you start JDeveloper BPEL Designer for the first time, a connection named LocalBPELServer is automatically created. This connection enables you to deploy your BPEL process from JDeveloper BPEL Designer to Oracle BPEL Server. The LocalBPELServer connection is sufficient for completing all tutorials in this guide.

If you want to create additional connections, follow these instructions.

  1. Select Connection Navigator from the View main menu in JDeveloper BPEL Designer.

  2. Right-click BPEL Process Manager Server.

  3. Select New BPEL Process Manager Connection.

  4. Click Next on the Welcome page.

  5. Provide a meaningful name for connecting to the server.

  6. Click Next.

  7. Enter the following details:

    Field Value
    Host Name localhost (default value)
    Port 9700 (default value)

  8. Click Next.

  9. Test the connection by clicking Test Connection. If the connection is successful, the following message appears:

    Success.
    
    
  10. Click Finish.

1.6 Setting the Hostname in Your Web Browser Preferences

Add the hostname of your computer to the Oracle JDeveloper preference settings. If you do not do this, you can receive parsing errors when selecting a WSDL file on the WSDL Chooser window while creating a partner link.

  1. Select Preferences from the Tools main menu.

  2. Click Web Browser and Proxy.

  3. Enter your hostname in the Exceptions field. For example, if your hostname is myhost-pc:

    us.acme.com|*.us.acme.com|localhost|127.0.0.1|myhost-pc
    
    
  4. Ensure also that localhost appears in the Exceptions field.

  5. Click OK.

    You are now ready to design your BPEL process.

1.7 Understanding Namespaces and Namespace URIs

As you use JDeveloper BPEL Designer, namespace values such as ns1:, ns2:, or client: can display in an Expression field or Variables navigation tree when creating copy rules in Assign activities, or in fields of other activities.

Oracle BPEL Process Manager attempts to reduce your interaction with namespaces. When a namespace appears in an Expression field or Variables navigation tree, accept the namespace prefixes that display when filling in the parts of your query or expression.

XML namespaces provide a method for distinguishing between duplicate element type and attribute names. Such duplication can occur, for example, in an XSLT style sheet or document that contains element types and attributes from two different DTDs. A <refuse> element means something entirely different for a sanitation agency than a <refuse> element for a loan processing agency. For this reason, they are distinguished by different namespace prefixes, such as ns1:, ns2:, or client:.The URIs provide a system for creating unique identifiers.

1.8 Eclipse BPEL Designer on Eclipse Platform

A production version of Eclipse BPEL Designer is also available as a plug-in on the Eclipse Platform version 3.0GA. The Eclipse Platform is designed for building integrated development environments (IDEs). You can use IDEs to create applications such as Web sites, embedded Java programs, C++ programs, and Enterprise JavaBeans.

For additional details, including Eclipse BPEL Designer and Oracle BPEL Process Manager software downloads, see the following URL:

http://www.oracle.com/technology/bpel