Eclipse is probably best known as a Java IDE, but it is more: it is an IDE framework, a tools framework, an open source project, a community, an eco-system, and a foundation.

BPEL M2 information

What's in M2 ?

M2 contains some of the missing pieces (prompters, XPath editors, Partner Links) that had to be added and in some cases re-worked. It also contains the beginnings of the Runtime integration.

You can now create a new BPEL Project using a wizard. The project will be at some point married to a runtime using the WTP server framework. Specifying a BPEL 2.0 facet on the project will eventually allow validation to hook.

  • Wizard Step 1 - Pick the BPEL 2.0 project wizard.
  • Wizard Step 2 - Specify project name, and runtime (currently not avialable)
  • Wizard Step 3 - Specify a Facates to apply to the project, such as the BPEL Facet.

The Detail Property Sheet for a BPEL variable will show the structure of a variable. Variables in BPEL 2.0 can be of:

  • Message Type - the variable has a structure of a WSDL message (with message parts).
  • Element Declaration - the variable has a structure of an XML Schema Element Declaration
  • Schema Type - the variable has a structure of an XML Schema Type

The types can come from imported schema files or from schemas embedded in WSDL files.

You can browse for BPEL variable types using the Variable Type Browser. It scans the specified locations (explicit imports, project, or workspace) for WSDL and XSD files and is activated when clicking the Browse ... button in the variable Detail property section. In addition to filtering out unwanted type names, the type structure is shown in the browser as well.

  • Imported Types Here the types visible from the BPEL imports are shown
  • Workspace Types Here the types visible in the workspace are shown
  • Explicit Addition of a Schema. When the required types are not present in the project/workspace/imports they can be explicitely added to the BPEL process. Types from Schama resources and from WSDL resources can be added.

Partner Links is the mechenism by which a BPEL process interrects with the outside world. Much like variables in BPEL, Partner Links must be created and assigned a Partner Link Type (PLT). You can browse for Partner Link Types (PLTs) using the Partner Link Type Browser.

The Detail Property Sheet for a Partner Link (PL) is the place where you can start browsing for PLTs. The property sheet will allow you to select the Roles of the Partner Link which in turn determines the Operations and the Messages that will be available for the exchanges. Suitably configured Parnter Links can be used in the partner interaction activities, such as invoke, receive, reply, and onMessage.

Partner Link Type browser is the mechanism by which a Partner Link is assigned its Partner Link Type.

The browser scans the specified locations (explicit imports, project, or workspace) for WSDL files and is activated when clicking the Browse ... button in the Partner Link Detail property section. In addition to filtering out unwanted partner link types and port types, the relavant WSDL structure is shown there as well.

Most WSDLs, do not define Partner Link Types. More often WSDL will define Port Types. The PLT browser will also show Port Types. When a port type is selected instead of a PLT, a wizard will attempt to wrap the Port Type into a PLT.

  • When a PortType is selected in the PLT browser, this Wizard attempts to create a wrapper PLT
  • Each PLT can have no less then 1 Role and no more then 2 Roles defined. A Role is associated to a PortType.

XPath Editor is used to create expressions in a variety of places. While, RepeatUntil, Assign, and Wait are a just a few places where XPath expression editing is necessary. The editor adds syntax highlighting and completions to assist the user in writing more or less correct XPath expressions (the validator will eventually check these expressions for syntax and semantics). It auto-matches enclosing characters for string(" and ') and auto-matches braces and paranthesis.

  • XPath Editor in a While loop
  • XPath editor in an Assign
  • XPath Editor in a Wait
  • XPath Editor in a Case

The Imports Property Sheet for the process displays all the entities (XSD and WSDL) imported in the BPEL Process being edited. You can manually Import a WSDL or a Schema file or Remove an existing import. While the tool attempts to manage the imports itself, there may be cases where such flexibility is important.

The Details Property Sheet of the Partner Interaction activities has been changed from the original implementation.

The forEach BPEL 2.0 activity has been added.