Book Image

WS-BPEL 2.0 for SOA Composite Applications with IBM WebSphere 7

Book Image

WS-BPEL 2.0 for SOA Composite Applications with IBM WebSphere 7

Overview of this book

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 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 easy at first sight, it hides a lot of potential and has many interesting advanced features that you should get familiar with in order to maximize the value of SOA.This book provides a comprehensive and detailed coverage of BPEL. It covers basic and advanced features of BPEL 2.0 and provides several real-world examples. In addition to the BPEL specification, this book provides comprehensive coverage of BPEL support on IBM's WebSphere SOA platform including security, transactions, human workflow, process monitoring, automatic generation of BPEL from process models, dynamic processes, and more.The 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 then moves on to explain core concepts such as invoking services, synchronous and asynchronous processes, partner links, the 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, and concurrent activities and links. The authors also discuss the business process lifecycle, the correlation of messages, dynamic partner links, abstract business processes, and mapping from BPMN to BPEL.The book discusses details of using BPEL with IBM WebSphere SOA platform. You will be able to develop BPEL and SCA composite applications, and demonstrate different approaches with the help of examples in this book. You will get exhaustive information on monitoring BPEL processes, and developing dashboards.The authors explain transformation of business process models in BPMN (using Business Modeler) to BPEL and how to achieve round-tripping. The book covers a complete BPM lifecycle from modeling through implementation, execution, monitoring, and optimization, and presents advanced real-world examples. In addition to standard BPEL it also covers IBM specific extensions on the WebSphere SOA platform.
Table of Contents (16 chapters)
WS-BPEL 2.0 for SOA Composite Applications with IBM WebSphere 7
Credits
Foreword
About the Authors
About the Reviewers
Preface

Using forEach and dynamic partner references


Let us now modify the previous example. Instead of statically coding into BPEL that we wish to call two different insurances, InsuranceA and InsuranceB, let us change the example and call an arbitrary number of Insurance services using a<forEach> loop.

To achieve this, we need to figure out how to use dynamic partner references. The<invoke> activity within the loop namely has to invoke a different service each time the loop is iterated. This means that we cannot set the partner link for the service statically in code, but have to do this dynamically.

Dynamic partner references

We will first create a variable that can hold partner link references. As we already know, the partner link references use the Endpoint Reference structure as defined by the WS-Addressing specification. This means that we need a type (business object) that will be able to store endpoint references, and not only one, but many.

We will therefore create a new business...