Developer Guide to BPEL Designer
This release provides you with a set of the NetBeans Enterprise Pack 5.5 Service Oriented Architecture features.
As one of the primary means of orchestrating web services is the use of the BPEL language, this guide explores ways in which the IDE enables you to edit, compile and deploy BPEL code compliant with the WS-BPEL 2.0 specification. To assist you in performing these tasks, there is a new type of project in the IDE that will support the authoring, building, deploying and testing of BPEL processes.
As BPEL processes enable you to orchestrate web services, editing BPEL and using orchestration features are important. The BPEL Designer provides a complete environment to enable you to quickly and efficiently orchestrate web services.
The focus of this release is roundtrip engineering – engineering from visual process design to BPEL source. Additionally, this release contains support for the most of the entire set of BPEL 2.0 language constructs.
To better understand the orchestration features provided by the Enterprise Pack, see also the following tutorials:
For readability, some images have been provided in thumbnail format. Click those images to see a larger version.
This document consists of several sections, each related to a particular feature of the web services orchestration functionality provided in the NetBeans Enterprise Pack 5.5. A list of sections is given in the Contents.
The IDE uses a BPEL runtime plug-in that is a provider of standard BPEL runtime capability. The BPEL runtime that the IDE provides is a framework for the execution content of BPEL: specifically, compiling BPEL, validating BPEL, assembling composite application descriptors based on partner WSDL, packaging/deploying, monitoring and debugging.
Before you compile and deploy to the BPEL Runtime, you must become familiar with the representation of the Runtime in the IDE. The BPEL Runtime runs inside the Sun Java System Application Server software, which provides a container for the Java Business Integration suite.
Runtime services for executing BPEL applications are provided by the BPEL Service Engine, which is a component of the JBI server. The BPEL Service Engine is started together with the Application Server. Thus, before deploying and test running a Composite Application project, you must make sure that the Application Server is started.
To do so, in the Runtime window, expand the Servers node and check the following for the Sun Java System Application Server:
If the server needs to be started, right-click the Sun Java System Application Server node, choose Start, and watch the Output window for the message JavaEEServiceEngine started successfully. You can optionally expand the Sun Java System Application Server > JBI node. You should see the service engines available on the JBI server. Expand the Service Engines node and you can see a node for the BPEL Service Engine:
The following BPEL 2.0 elements and attributes are not present in this release of the BPEL Designer.
Element | Parent Element |
---|---|
Validate, Rethrow, Compensate, ExtensionActivity, FromPart, CompensationHandler | NA |
CompensationHandler, Catch, CatchAll | Invoke |
From | Variable |
Targets, Sources | Activity |
FromPart | Receive, Invoke, OnEvent, OnAlarm |
ToPart | Reply, Invoke |
ExtensibleAssign | Assign |
Documentation, Namespace | From, To in Assign |
Links | Flow |
PartnerLinks, CorrelationSets, CompensationHandler, TerminationHandler | Scope |
MessageExchange | Scope, Process |
Attribute | Element |
QueryLanguage, ExpressionLanguage, SuppressJoinFailure, AbstractProcess, ExitOnStandardFault | Process |
InitializePartnerRole | PartnerLink |
SuppressJoinFailure | Activity |
Validate | Assign |
ExpressionLanguage, Property, PartnerLink, EndPointReference, Opaque | From |
QueryLanguage, Property, PartnerLink | To |
Isolated, ExitOnStandardFault | Scope |
Parallel | ForEach |
MessageExchange | Receive, Reply, OnMessage, OnEvent |
The elements listed below are not fully supported or have restricted usage in this release of the BPEL Designer.