Gopalan Suresh Raj's Web Cornucopia

The JBI Composite Application Project System

Posted in JBI and SOA by gsraj on May 26, 2006

The
JBI Composite Application (CA) project system, sometimes called the
“JBI project system,” allows users to create instances of SOA composite
application projects within the NetBeans IDE.

Acronyms

Explanation

CA

Composite Application

BPEL

Business Process Execution Language

JBI

Java Business Integration

SU

Service Unit. A Service Unit is a jar file which can be deployed into a JBI service engine or binding component.

SA

Service
Assembly. A service assembly is jar file which is a collection of
service unit jars. A service assembly jar packages different service
unit jars which then can be deployed to various JBI components (service
engines or binding components).

Each composite application
project instance is a container holding the deployment configuration
for a collection of JBI component subprojects, e.g., BPEL Module
projects, XSLT projects, etc. It also maintains deployment specific
data objects, such as WSDL, XSD, and JBI deployment descriptor files.
The
JBI Composite
Application (CA) project system allows the user to create a Service
Assembly (SA) artifact that contains all the subprojects as Service
Units (SUs). The SA can then be deployed to the JBI component
containers on the JBI Meta-container
.

It
provides a project folder with subfolders on the local file system for
storing project specific design and configuration data. Key project
actions are implemented as ant scripts providing support for standard
actions such as: Configure, Clean, Build, and Deploy. Most of the ant
action scripts can be invoked outside of Netbeans IDE when supplied
with proper property files.

The main objective of the project
system is to provide a deployment container for various types of JBI
component projects. It provides support for users to selectively
include JBI component projects and deployment data. This allows one to
reuse JBI component projects for different deployment scenarios.

An architectural overview of the JBI Composite Application Project system is shown in Figure 1 below.

Figure 1: JBI Composite Application Project system

To
provide accurate target deployment information, the project system
accesses active JBI servers to retrieve information on deployed JBI
components, e.g., id and state. This information will allow users to
update the deployment configuration to match that of the target JBI
server. This feature utilizes services provided by the JBI Manager discussed in an earlier blog entry.

The
project system provides support allowing user to customize the
deployment configuration for different usage scenarios. This service is
provided by tools, that allows one to add/modify
deployment specific data within a composite application project, so
that JBI component projects can be designed to be more generic and be
reusable in multiple deployment scenarios.

The
project system performs validation of SU deployment descriptor
generated by JBI component projects. If needed, new deployment
descriptors are generated with modifications or additions based on the
deployment configuration specified by the composite application project.

The
project system generates the SA deployment package according to the JBI
spec that packages SU deployment jars from JBI component projects with
updated deployment configuration as specified by the composite
application project.

The SA deployment package can be deployed to the target JBI Meta-container on the server for execution.

Create A New Composite Application Project
The
user can create a new JBI composite application project. This works in
conjunction with standard netbeans new project action which can be
launched from File->New Project.

Figure 1: Create a New Composite Application Project


Add Component Subprojects

Users
can add component subprojects into the composite application. On the
project explorer, the user can right click on the newly created project
to bring up the context action menu as shown below:


Figure 2:

The
“Add JBI Module” opens the Select Project dialog. The user can select
component subprojects to add into the composite application.

The JBI Composite Application Project System allows the user to add and remove component subprojects.

Figure 3: Add/Remove component subprojects

Once
a project has been created and configured, the user can build the
project to create JBI service assembly deployment artifacts. Select the
“Build Project” item on the context menu to start the build action.

A successful build will create the SA deployment zip file for the project. After
the build is successful, the user should be able to deploy the service
assembly to the target JBI meta-container on the application server and start the services.
Select the “Deploy Project” item on the context menu to start the
deployment action.
A successful deployment will start the service assembly on the target server.


Download the Java EE 5 Tools Bundle Beta from http://java.sun.com/javaee/downloads/index.jsp for FREE, and provide us feedback on the improvements you’d like to see. It combines the new Java EE 5 SDK with NetBeans IDE 5.5 Beta,
NetBeans Enterprise Pack 5.5 Early Access, and Sun Java System
Application Server Platform Edition 9. This bundle also contains
Project Open ESB Starter Kit Beta, Java EE 5 samples, Java BluePrints,
and API docs (Javadoc).


[Listen to this article]

_uacct = “UA-464833-1”;urchinTracker();

One Response

Subscribe to comments with RSS.

  1. Gregor said, on May 9, 2007 at 2:08 am

    NetBeans gets more and more interesting:) btw the screenshot images seem to be broken, could you please check the links?


Leave a comment