OpenESB - Getting Started

This getting started guide shows how to install Jbi4Corba and a sample service assembly in GlassFishESB environment.

Integration Scenario

Environment setup

Installing and starting Jbi4Corba Binding Component

Creating a service assembly

Deploying a service assembly

Integration Scenario

A binding component using Jbi4Corba exposes on the internal BUS an external service provided by a CORBA servant. To locate the servant, the Jbi4Corba component must use an active CORBA name server (or other localization mechanism).

Thus the integration scenario is shown in the following figure:

Integration Scenario.

Environment setup

Install the GlassFishESB (or newer). That contains the IDE (Netbeans 6.1) and GlassFish with the JBI runtime.

Installing and starting Jbi4Corba Binding Component

Download the Jbi4Corba component. To run jbi4corba it's necessary both a shared library and the component. The shared library contains jacorb's orb and it's named jacorb-library.zip. Install first the shared library. Install and start the component using the contextual menu on the server JBI module.

Install the jbi4corba component

After these operations, you can deploy a Service Assembly that uses the Jbi4Corba component.

Creating a service assembly

A service assembly is a deployable item that configures one or more endpoint inside a JBI ESB. We are going set up a configuration that take a Corba service and expose it a SOAP/HTTP Webservice. The configuration is shown in the following figure:

A Corba service exposed as a SOAP/HTTP Webservice.

The Jbi4Corba component creates an internal (i.e. visible inside the ESB) endpoint. This internal endpoint is exposed as an external endpoint with the Http-Soap Binding Component. The http component will proxy the incoming externall calls to the internal endpoint exploiting the JBI routing mechanisms.

A Service Assembly (SA) is a zip file containing one or more Service Unit (SU) file, each Service Unit defining one or more endpoint. We need three Service Unit (SU):

  • JBI4Corba containing the definition for the Jbi4Corba endpoint.
  • Http containing the definition for the http endpoint.
  • BPEL containing the definition for the BPEL.

Jbi4Corba service unit

To create a Jbi4Corba service unit follow The Netbeans Plugin Guide

Http service unit

To create a Http service unit follow HTTP Binding Component User's Guide and Understanding the HTTP Binding Component

BPEL service unit

To create a BPEL service engine follow BPEL Service engine User's Guide and Developer Guide to BPEL Designer

For example the BPEL generated that implement a simple Business procress between a Jbi4corba (SU) and a Http (SU) is:

Example the BPEL generated

The service assembly

The service assembly is unit of deployable configuration in JBI, in our example it has the following layout:

Composite Application

Deploying a service assembly

In NetBeans, with the server started, select from "CompositeApp" the "Deploy" option and wait start it.

Deploy the Service Assembly

If the Service Assembly starts correctly, you should see both the BC running

The Service Assembly correctly started

Now you can test the service assembly sending a SOAP message to the HTTP endpoind. For the component to work, the Corba servant and the name server should be running when the SOAP message is processed by the Service Assembly.