Book Image

Application Development for IBM WebSphere Process Server 7 and Enterprise Service Bus 7

Book Image

Application Development for IBM WebSphere Process Server 7 and Enterprise Service Bus 7

Overview of this book

By adopting an SOA approach in Business Process Management (BPM), you can make your application flexible, reusable, and adaptable to new developments. The SOA approach also gives you the potential to lower costs (from reuse), and increase revenue (from adaptability and flexibility). However, integrating basic SOA constructs (such as Process, Business Services, and Components) and core building blocks of BPM (such as Process Modeling and Enterprise Service Bus) in a real-world application can be challenging.This book introduces basic concepts of Business Integration, SOA Fundamentals, and SOA Programming Model and implements them in numerous examples. It guides you to building an Order Management application from scratch using the principles of Business Process Management and Service Oriented Architecture and using WebSphere Process Server (WPS) and WebSphere Enterprise Service Bus (WESB). The various detailed aspects, features, and capabilities of the product are conveyed through examplesWe begin with essential concepts on Business Integration, SOA Fundamentals and SOA Programming Model. Then we set up the development environment to build your first Hello Process and Hello Mediation applications.Gradually, we build an SOA-based Order Management Application. We cover important aspects and functions of WPS and WESB with numerous practical examples. We show how to analyze your application's business requirements and check if an SOA approach is appropriate for your project. Then you do a top-down decomposition of your application and identify its use cases, business processes, and services. Having built the SOA Application, we introduce you to various non-functional topics, including: Administration, Governance, Management, Monitoring, and Security. We also discuss deployment topologies for WPS and WESB, performance tuning, and recommended practices.
Table of Contents (20 chapters)
Application Development for IBM WebSphere Process Server 7 and Enterprise Service Bus 7
Credits
About the Authors
About the Reviewers
Preface
WID, WPS, and WESB Tips, Tricks, and Pointers
Index

Use of global variables in a forEach within a BPEL process


In a business process, a forEach activity is very useful in cases where you want to interact with a set of partners in parallel, and the partners are dynamically determined at runtime. When using forEach in its parallel mode, be very careful when changing variables that are global (created outside the scope of the forEach). There is no semantics of what order parallel branches get executed in. What this means in reality is that when the parallel branches of the forEach execute, if they are assigned to global variables, there is no definition of which order those assignments will get executed in.

With scope isolation, WS-BPEL 2.0 allows you to control the access of global data. If a scope's isolated attribute is set to 'yes', then it is guaranteed that there will be no concurrent access to the global data that the scope is referencing while the scope executes. For a very informative article on the usage of the forEach activity, available attributes, and typical usage patterns with code snippets, please refer to the following article:

http://www-01.ibm.com/support/docview.wss?rs=2307&context=SSQH9M&uid=swg27011753