WS-BPEL 2.0 for SOA Composite Applications with Oracle SOA Suite 11g

WS-BPEL 2.0 for SOA Composite Applications with Oracle SOA Suite 11g
eBook: $41.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 15%!
Print + free eBook + free PacktLib access to the book: $111.98    Print cover: $69.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Develop BPEL and SOA composite solutions with Oracle SOA Suite 11g
  • Efficiently automate business processes with WS-BPEL 2.0 and develop SOA composite applications.
  • Get familiar with basic and advanced BPEL 2.0.
  • Detailed explanation of advanced topics, such as security, transactions, human workflow, process monitoring, transition from BPMN to BPEL, dynamic processes, fault handling, etc., enabling you to work smarter and more efficiently.
  • Step-by-step real-world examples to learn and manage various advanced aspects of BPEL development using Oracle SOA Suite 11g, JDeveloper, Oracle Service Bus, Oracle Service Registry, Oracle Enterprise Repository, BPM Suite and BPA Suite



Appendix A

Appendix B

Book Details

Language : English
Paperback : 616 pages [ 235mm x 191mm ]
Release Date : September 2010
ISBN : 1847197949
ISBN 13 : 9781847197948
Author(s) : Matjaz B. Juric, Marcel Krizevnik
Topics and Technologies : All Books, Enterprise Products and Platforms, Oracle Fusion Middleware, BPEL, Enterprise, Oracle, SOA, Web Services

Table of Contents

Chapter 1: Introduction to BPEL and SOA
Chapter 2: Service Composition with BPEL
Chapter 3: Advanced BPEL
Chapter 4: Using BPEL with Oracle SOA Suite 11g
Chapter 5: BPEL Extensions, Dynamic Parallel Flow, Dynamic Partner Links, Notification Service, Java Embedding, and Fault Management Framework
Chapter 6: Entity Variables, Master and Detail Processes, Security, and Business Events in BPEL
Chapter 7: Human Interactions in BPEL
Chapter 8: Monitoring BPEL Processes with BAM
Chapter 9: BPEL with Oracle Service Bus and Service Registry
Chapter 10: BPMN to BPEL Round-tripping with BPA Suite and SOA Suite
Chapter 11: Integrating BPEL with BPMN using BPM Suite
Appendix A
Appendix B
  • Chapter 1: Introduction to BPEL and SOA
    • Why business processes matter
    • Business and IT alignment
    • Service-Oriented Architecture
      • BPEL
      • Services
        • How to develop services
      • SOA concepts
        • Services
        • Interfaces
        • Messages
        • Loose Coupling
        • Reusability
        • Registries and repositories
        • Quality of Service
        • Composition of services into business processes
    • SOA building blocks
      • BPEL for process automation
      • Web Services
        • How Web Services differ from their predecessors
        • Web Services technology stack
      • Enterprise Service Bus
        • ESB features
      • Registry and repository
      • Human task support and identity management
      • Process Monitoring or Business Activity Monitoring
      • Business Rules Management Systems (BRMS) or Rule Engine
      • Adapters
      • Service Component Architecture
      • SOA governance
    • Understanding BPEL
      • BPEL features
      • Orchestration and choreography
      • Executable and abstract processes
    • Relation of BPEL to other languages
      • XLANG
      • WSFL
      • BPML
      • ebXML BPSS
      • YAWL
      • WSCL
      • WSCI
      • WS-CDL
      • BPMN
    • BPEL servers overview
    • The future of BPEL
    • Summary
  • Chapter 2: Service Composition with BPEL
    • Developing business processes with BPEL
    • Core concepts
      • Invoking services
      • Invoking asynchronous services
      • Synchronous/Asynchronous business processes
      • Understanding links to partners
      • Partner link types
      • Defining partner links
      • BPEL process tag
      • Variables
      • Providing the interface to BPEL processes: <invoke>, <receive>, and <reply>
        • <invoke>
        • <receive>
        • <reply>
      • Assignments
      • Validating variables
      • Accessing variables in expressions
      • XSLT transformations
      • Conditions
      • Activity names
      • Documentation
    • BPEL business process example
      • Involved services
        • Employee Travel Status service
        • Airline service
      • WSDL for the BPEL process
      • Partner link types
      • Business process definition
        • BPEL process outline
        • Partner links
        • Variables for the Travel Process
        • BPEL process main body
    • Asynchronous BPEL example
      • Modify the BPEL Process WSDL
      • Modify partner link types
      • Modify the BPEL process definition
    • Summary
  • Chapter 3: Advanced BPEL
    • Advanced activities
      • Loops
        • While
        • Repeat Until
        • For Each
      • Delays
        • Deadline and duration expressions
      • Empty activities
      • Ending a process
    • Fault handling and signaling
      • WSDL faults
      • Signaling faults
        • Signaling faults to clients in synchronous replies
        • Signaling faults to clients in asynchronous scenarios
      • Handling faults
        • Selection of a fault handler
        • Synchronous example
        • Asynchronous example
        • Propagating faults
        • Default fault handler
        • Inline fault handling
    • Scopes
      • Example
        • First scope
        • Second scope
        • Third scope
      • Isolated scopes
    • Compensation
      • Compensation handlers
        • Example
        • Default compensation handler
      • Invoking compensation handlers
    • Termination handler
      • Default termination handler
    • Managing events
      • Pick activity
        • Message events
        • Alarm events
        • Example
      • Event handlers
        • <onEvent>
        • <onAlarm>
    • Business process lifecycle
    • Correlation and message properties
      • Message properties
        • Mapping properties to messages
        • Extracting properties
        • Properties and assignments
      • Correlation sets
      • Using correlation sets
    • Concurrent activities and links
      • Sources and targets
        • Example
      • Transition conditions
      • Join conditions and link status
      • Join failures
        • Suppressing join failures
    • Dynamic partner links
    • Message exchanges
      • From-parts and to-parts
        • <fromParts>
        • <toParts>
    • Abstract business processes
    • Generating BPEL from BPMN diagrams
    • Summary
  • Chapter 4: Using BPEL with Oracle SOA Suite 11g
    • Overview
      • BPEL Component Designer
      • BPEL Service Engine
      • Database
      • Enterprise Manager Console (EM)
    • Building composite applications with SOA Composite Editor
      • Service components
      • Binding components
      • Wires
    • Development of BPEL processes in JDeveloper
      • Defining XML schemas
      • Defining a WSDL interface
      • Creating an SOA composite application
        • Adding the BPEL Process service component
        • Adding references
      • BPEL process implementation
        • Adding partner links
        • Adding variables
        • Adding process activities
        • Validating BPEL processes
    • Testing SOA composite applications
    • Deploying SOA composite applications
      • Deploying from JDeveloper
        • Creating configuration plans in JDeveloper
      • Deploying using Ant Scripts
    • Managing SOA composite applications
      • Managing SOA composites using JDeveloper
      • Managing SOA composites using Enterprise Manager Console
        • Deploying and undeploying SOA composite applications
        • Initiating an SOA composite application test instance
        • Viewing the SOA composite instances flow trace
        • Automatic testing of SOA composite instances
    • Developing and deploying BPEL 2.0 processes
    • Summary
  • Chapter 5: BPEL Extensions, Dynamic Parallel Flow, Dynamic Partner Links, Notification Service, Java Embedding, and Fault Management Framework
    • Extension functions and activities
      • Transformation and query support
      • Data and array manipulation
      • XML manipulation
      • Date and time expressions
      • Process identification
      • LDAP access and user management
    • Dynamic parallel flow
      • Dynamic flow example
      • Providing a list of partner links
      • Dynamic parallel invocation of airline services
      • Dynamic partner links
      • Offer selection loop
      • Testing the example
    • Notification Service
      • Setting the Email Driver
      • Sending e-mail notifications
        • Review of code
        • Testing the example
    • Java code embedding
      • Invoking a Java class from embedded code
    • Fault management framework
      • Creating a fault policy
    • Summary
  • Chapter 6: Entity Variables, Master and Detail Processes, Security, and Business Events in BPEL
    • Entity variables
      • Altering the EMPLOYEES table
      • Creating the data source
      • Creating the ADF-BC service
      • Modifying the SOA composite application
      • Testing the entity variable
    • Master and Detail processes
      • Creating the Detail process
      • Modifying the Master process
      • Adding <signal> and <receiveSignal> activities
      • Testing the Master-Detail coordination
    • Securing SOA composite applications
      • Attaching and detaching policies in JDeveloper
      • Managing policies in the Enterprise Manager console
      • Testing security
    • Using business events in BPEL
      • Defining the business event
      • Modifying the BPEL process
      • Testing the SOA composite application
    • Summary
  • Chapter 7: Human Interactions in BPEL
    • Human interactions in business processes
    • Human Tasks in BPEL
      • Human Task integration with BPEL
      • Oracle Human Workflow concepts
      • Workflow patterns
    • Creating Human Task definitions
      • Configuring a Human Task title and outcomes
      • Configuring Human Task payload
      • Configuring Human Task assignments
      • Configuring Human Task deadlines
      • Configuring Human Task notifications
    • Using Human Tasks in BPEL processes
      • Creating variable and adding <switch> activity
      • Adding a Human Task
      • Configuring Human Task case branches
    • Creating Human Tasks forms
      • Auto-generating a task form
      • Modifying the task form
    • Deploying the SOA composite and task form
    • Using the Oracle BPM Worklist application
      • Logging into the BPM Worklist application
      • Completing the task
      • Testing Human Task expiration
    • BPEL4People
      • Brief look at WS-HumanTask
        • Overall structure
        • Human Tasks
        • Escalations
        • Notifications
        • Programming interface
      • Brief look at BPEL4People
        • Overall structure
        • People assignments
        • People activities
    • Summary
  • Chapter 8: Monitoring BPEL Processes with BAM
    • Business Activity Monitoring
    • Oracle BAM architecture and features
      • Oracle BAM Server
      • Oracle BAM web applications
    • Gathering BAM data from a BPEL process
      • Monitoring objects
      • Sensors and sensor actions
    • Introduction to demonstration scenario
    • Enabling activity monitoring
    • Using monitoring objects
      • Creating a Business Indicator monitoring object
    • Using sensors
      • Creating BAM data objects
      • Creating a BAM server connection
      • Creating sensors and sensor actions
    • Using the BAM Adapter partner link
    • Deploying an SOA composite application
      • Checking created data objects
      • Testing data objects
    • Building the BAM dashboard
      • Creating a report and choosing a report template
      • Displaying a list of process instances
      • Displaying the percentage of confirmed flight tickets
      • Displaying the number of reserved tickets by airline
      • Displaying the effectiveness of the Approval Manager
      • Testing the dashboard
    • Summary
  • Chapter 9: BPEL with Oracle Service Bus and Service Registry
    • Oracle Service Bus architecture and features
      • Proxy services and business services
      • Message flow modeling
    • Oracle Service Registry
      • Logging into Oracle Service Registry
      • Publishing a business entity
      • Publishing a business service
    • Using Oracle Service Bus Console
      • Creating a project and importing resources from OSR
        • Creating a connection to Oracle Service Registry
        • Importing resources from Oracle Service Registry
      • Configuring a business service
        • Enabling service result caching
        • Enabling service monitoring
      • Testing a business service
      • Creating an Alert destination
      • Creating a proxy service
        • Configuring Message Flow
      • Testing a proxy service
      • Publishing a proxy service to the Oracle Service Registry
    • Re-wiring an SOA composite application
    • Oracle Service Bus use case
      • Modifying the Proxy message flow
      • Testing an SOA composite application
    • Summary
  • Chapter 10: BPMN to BPEL Round-tripping with BPA Suite and SOA Suite
    • Oracle BPA Suite architecture and features
    • Round-tripping between BPMN and BPEL
      • Steps for BPMN-BPEL round-tripping
      • Mapping of BPMN constructs to BPEL
      • Mapping of BPEL constructs to BPMN
    • Demonstration scenario
    • Business process modeling in Business Process Architect
      • Creating the database
      • Modeling a business process
        • Creating a new model
        • Adding process activities and defining activity flow
        • Editing object properties
        • Adding a start event
        • Adding automated activities
        • Adding a human task
        • Completing the Process model
      • Transforming a business process into BPEL
    • Using BPEL Blueprints in Oracle JDeveloper
      • Creating a connection to the BPA Repository
      • Creating an application and an SOA Project
      • Understanding the generated BPEL code
    • BPMN-BPEL round-tripping
      • Propagating changes from BPMN to BPEL
        • Modifying the BPMN model
        • Refreshing BPEL Blueprint
      • Propagating changes from BPEL to BPMN
        • Adding process steps to the BPEL
        • Updating the BPMN model
    • Summary
  • Chapter 11: Integrating BPEL with BPMN using BPM Suite
    • Oracle BPM Suite architecture and features
    • Demonstration scenario
    • Business Process Modeling and implementation in Oracle BPM Studio
      • Creating a BPM application and project
      • Creating a BPMN process
      • Overview of Oracle BPM Studio
      • Implementing a BPMN process
        • Creating data objects
        • Configuring start and end events
        • Invoking synchronous service
        • Adding the first BPEL process
        • Invoking a BPEL process from BPMN
        • Adding a human task
        • Adding a second BPEL process
        • Completing the process
      • Deploying a BPM project
    • Testing an SOA composite application
      • Initiating an SOA composite instance
      • Completing the human task using Oracle BPM Workspace
    • Summary

Matjaz B. Juric

Matjaz B. Juric holds a PhD in Computer and Information Science. He is a Full Professor at the University of Ljubljana and head of the Cloud Computing and SOA Competence Centre ( Matjaz is a Java Champion, IBM Champion, and Oracle ACE Director. He has more than 15 years of work experience. He has authored/co-authored "Do More with SOA Integration, WS-BPEL 2.0 for SOA Composite Applications, Oracle Fusion Middleware Patterns, Business Process Driven SOA using BPMN and BPEL, and Business Process Execution Language for Web Services "(English and French editions). He has also authored/co-authored "BPEL Cookbook: Best Practices for SOA-based integration and composite applications development" (award for best SOA book in 2007 by SOA World Journal), "SOA Approach to Integration, Professional J2EE EAI, Professional EJB, J2EE Design Patterns Applied", and .NET Serialization Handbook. He has published chapters in More Java Gems (Cambridge University Press) and in Technology Supporting Business Solutions (Nova Science Publishers). He has also published in several journals and magazines and presented at conferences. Matjaz has been involved in several large-scale projects. In cooperation with the IBM Java Technology Centre, he worked on performance analysis and optimization of RMI-IIOP, an integral part of the Java platform.

Marcel Krizevnik

Marcel Krizevnik is a researcher at the University of Maribor where he is preparing a Ph.D. in computer and information science. Marcel started his career as a software developer of chemistry information systems. Now, his main research areas are service-oriented architecture and cloud computing. He is also a member of SOA Competency Center and Cloud Computing Center. In the last three years, he has been involved in several SOA technology projects.

Code Downloads

Download the code and support files for this book.

Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

WS-BPEL 2.0 for SOA Composite Applications with Oracle SOA Suite 11g +    Oracle SOA Suite 11g R1 Developer's Guide =
50% Off
the second eBook
Price for both: $53.70

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

  • Fully understand the role of BPEL in SOA and the overall understanding what BPEL is, and why it is important
  • Compose business processes in BPEL
  • Explore BPEL 2.0 activities, loops, decisions, flow control, variables, scopes and other constructs that will enable you to develop BPEL processes.
  • Dig into advanced BPEL topics, such as fault handlers, event handlers, compensation, concurrent activities, links, correlations, message properties, dynamic partner links, process lifecycles, and more.
  • Examine human workflow in BPEL, including BPEL4People and WS-HumanTask.
  • Secure BPEL processes and defining transactional boundaries.
  • Examine the advanced features of BPEL Process Manger such as BPEL extensions, dynamic parallel flow, notification service, Java embedding, fault management framework, entity variables, master and detail processes.
  • Utilize business events in BPEL.Monitor BPEL processes using Oracle BAM.
  • Use BPEL with Oracle Service Bus and Oracle Service Registry.
  • Generate BPEL from BPMN and round-trip the changes with BPA Suite and BPM Suite.
  • Govern BPEL processes with Oracle Enterprise Repository.
  • Develop and control the full BPM life cycle using Oracle SOA Suite 11g, JDeveloper, Oracle BAM, Oracle Service Bus, Oracle Service Registry, BPA and BPM Suite, and Oracle Enterprise Repository.


In Detail

Business Process Execution Language (BPEL, aka WS-BPEL) has become the de-facto standard for orchestrating services in SOA composite applications. BPEL reduces the gap between business requirements and applications and allows for better alignment between business processes and underlying IT architecture. BPEL is for SOA what SQL is for databases. Therefore learning BPEL is essential for the successful adoption of SOA or the development of composite applications. Although BPEL looks simple at first sight, it hides its large potential and has many interesting and advanced features. If you can get familiar with these features - you can maximize the value of SOA.

This book provides a comprehensive and detailed coverage of BPEL, one of the centerpieces of SOA. It covers basic and advanced features of BPEL 2.0 and provides several real-world examples. In addition to BPEL specification the book provides comprehensive coverage of BPEL support in Oracle SOA Suite 11g, including security, transactions, human workflow, process monitoring, automatic generation of BPEL from process models, dynamic processes, and more.

This book starts with an introduction to BPEL, its role with regard to SOA and the process-oriented approach to SOA. The authors give short descriptions of the most important SOA platforms and BPEL servers—the run time environments for the execution of business processes specified in BPEL—and compare BPEL to other business process languages. The book will then move on to explain core concepts such as invoking services, synchronous and asynchronous processes, partner links, role of WSDL, variables, flows, and more.Moving ahead you will become familiar with fault handling, transaction management and compensation handling, scopes, events and event handlers, concurrent activities and links. The authors also discuss the business process lifecycle, correlation of messages, dynamic partner links, abstract business processes and mapping from BPMN to BPEL.

The book presents in detail, how to use BPEL with Oracle SOA Suite 11g PS2. It explains the development of BPEL and SCA assemblies, and demonstrates different approaches with some practical examples. It addresses security, transaction handling, and human workflow. Then, the book addresses entity variables, notification services, fault management framework, and business events in BPEL. It provides exhaustive coverage of monitoring BPEL processes and developing dashboards with Oracle BAM. It explains how to use BPEL processes with Oracle Service Bus and Oracle Service Registry. Using examples, the book also demonstrates how to transform business process models in BPMN (using Business Modeler) to BPEL, how to achieve round-tripping using BPA Suite and BPM Suite, and how to use Oracle Enterprise Repository to govern BPEL processes. The book also covers the complete BPM lifecycle from modeling through implementation, execution, monitoring, and optimization and presents advanced, real-world examples.

A comprehensive and practical guide to the design, development, and use of Business Process Execution Language with Oracle SOA Suite 11g.


This book is a comprehensive guide that shows developers how to design and develop business processes in BPEL efficiently. Throughout the book, the authors discuss important concepts and show real-world examples covering Oracle SOA Suite 11g and related products.

Who this book is for

This book is aimed at SOA architects and developers involved in the design, implementation, and integration of composite applications and end-to-end business processes. The book provides comprehensive coverage of WS-BPEL 2.0 for implementing business processes and developing SCA composite application, dealing with the issues of composition, orchestration, transactions, coordination, and security. This book uses Oracle SOA Suite 11g and related Oracle products. To follow this book you need to have basic knowledge of XML, web services, and Java EE.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software