Using the BPEL Designer and Service Engine

Overview

The section covers the following topics:

The JBI Runtime Environment

The BPEL Designer

The BPEL Service Engine

The Composite Application Project

The JBI Runtime Environment

The Java Business Integration (JBI) runtime environment provides the runtime capability for SOA tools in the NetBeansTM IDE. The JBI runtime environment includes several components that interact using a services model. This model is based on Web Services Description Language (WSDL) 2.0. Components that supply or consume services within the JBI environment are referred to as Service Engines. One of these components is the The BPEL Service Engine that provides services for executing business processes. Components that provide access to services that are external to the JBI environment are called Binding Components.

JBI components are installed as part of the GlassFish application server, which is packaged with the NetBeans IDE.

To view the installed or deployed JBI components:

  1. In the IDE, open the Services window, expand the GlassFish V2 node and expand the JBI node.

  2. If you do not see the JBI node, you need to start the Application Server by choosing Start from the pop-up menu of the GlassFish V2 node.

Image shows the JBI nodes under the Glassfish in the
NetBean IDE Server window

For a detailed overview of the Java Business Integration concept and a description of JBI nodes, see the JBI Component Technical Overview.

The BPEL Designer

The BPEL Designer provides a highly-graphic framework that allows you to create and visualize business processes that are compliant with the WS-BPEL 2.0 specification. The BPEL Designer feature of the NetBeans IDE allows you to easily create and edit BPEL processes. These processes can then be executed by the BPEL Service Engine on the GlassFish Application Server.

The BPEL Designer consists of four editing windows called views:

The BPEL Service Engine

The BPEL Service Engine provides runtime services for deploying BPEL processes. The BPEL Service Engine is used to execute WS-BPEL 2.0 (or simply BPEL) compliant business processes. WS-BPEL 2.0 (Web Services Business Process Execution Language) is an XML-based language used to program business processes.

Business processes typically involve the exchange, or orchestration, of messages between the process and other web services known as partner services. The contract between a business process and partner services is described in WSDL 1.1. The message exchange between a business process and partner services is wrapped in the WSDL 1.1 message wrapper, as defined by the JBI specification, and routed via the JBI Normalized Message Router (NMR). The NMR interacts with external web services, not resident on the local JVM, via binding components. Binding components are responsible for encapsulating protocol-specific details. Transactions between the BPEL Service Engine and collocated EJBs or web components are handled through the Java EE service engine.

WS-BPEL 2.0 utilizes several XML specifications: WSDL 1.1, XML Schema 1.0, XPath 1.0, and XSLT 1.0. Note that the JBI specification is targeted toward WSDL 2.0 and accommodates WSDL 1.1 by defining the wrapper. The BPEL Service Engine supports one-way, request-response operations (as defined in WSDL 1.1), within stateful, long-running interactions that involve two or more parties. Asynchronous request-response is accomplished using two one-way operations, one implemented by a partner, the other implemented by the business process using correlation.

The Composite Application Project

The Composite Application project is used to create a Service Assembly that can be deployed to the Java Business Integration (JBI) runtime environment.

Within the Composite Application project, you can:

To deploy a Composite Application to the BPEL Service Engine, it must include a JBI module created from a BPEL Module project. Within a Composite Application Project that includes a JBI module, you can also create and execute test cases that can then be run against the deployed BPEL processes.

For more information about working with Composite Application projects, see Understanding the BPEL Module Project and Testing and Debugging BPEL Processes sections of this guide.