Showing posts with label Open ESB. Show all posts
Showing posts with label Open ESB. Show all posts

Tuesday, March 10, 2009

Comprehensive example in Open ESB using File, FTP, JMS, JDBC and Soap

The last 5 articles explains different binding components (File, FTP, Soap, JDBC, JMS) usage in Open ESB. To summarize and get more understanding of each of this BC, here is a comprehensive scenario using all of these binding components. Let's define a problem that requires to use all these BCs.

Problem Description: Get the employee details from the database based on employee id and publish it in JMS. There will be two different subscribers who listens to JMS and consumes the message based on some filter logic and publish the message either on local file or on FTP server. The whole solution should be exposed as a web service so that it can be accessible to any web service client.
Let's assume that you have to implement this solution in normal application like Java/.Net. You'll have to take care of the following major things apart from business logic
  • Management of Database connections
  • Management of JMS connections
  • Management of FTP connections
  • Management of File streams
  • Web service implementations

In case, you are using SOA application all of the above are taken care by the respective binding components and user can only concentrate on the business logic.

Click here to view the complete solution in Open ESB

Below is the solution overview diagram



JMS/Messaging in Open ESB

As we know that messaging in the core technology in any ESB/SOA application, this article explains how messaging has been addressed in Open ESB using JMS Binding Component.

Follow this link to get the complete solution on the usage of JMS BC with a sample business scenario

Connecting to database in OpenESB

In any application, there is a maximum probability of using database, so here is the need on how to interact/connect with different databases from the application. There are many solutions available in each of the application like java/.Net/PHP etc., but the same need to be addressed in any of ESB/SOA application as well.

Let's see how this is addressed in Open ESB. Even in Open ESB, there are multiple solutions available like SQL SE, JDBC BC to connect to the database but this article explains the database connectivity using JDBC BC.

Follow this link to get the complete solution.

FTP in OpenESB

Previous article describes the transferring of files from one location to other location within file system with some conversion of the message using Encoders but most of the real time requirements involves upload/download of files from the remote location using the FTP protocal.

As this is common requrement in many of the SOA/ESB solutions, we are going to discuss how we can achieve this in Open ESB

Click here for the problem description and detailed solution of File Transfer using FTP protocol in Open ESB

Friday, February 13, 2009

Correlations in Open ESB

Introduction

Consider the usual supply-chain situation where a buyer sends a purchase order to a seller. The seller needs to asynchronously return an acknowledgement for the order, and the acknowledgement must be routed to the correct business process instance at the buyer. How do we guarantee that we are talking to the original instance at buyer side? To solve this, the obvious and standard mechanism in BPEL is Correlations. Correlations use key fields of data which may uniquely identify the conversation/instance. Thus correlations enable processes to participate in the stateful conversations. In the above scenario, it carries a business token in the order message (such as a purchase order number) that is copied into the acknowledgement for correlation. The token can be in the message envelope in a header or in the business document (purchase order) itself. In either case, the exact location and type of the token in the relevant messages is fixed and instance independent. Only the value of the token is instance dependent.

Definition: The idea of associating business-application-specific data found in the messages to maintain references to business process instances is termed BPEL Correlations



As Correlation is the key concept in BPEL and OpenESB is an emerging technology, this Sun BluePrints™ explains how to implement BPEL Correlations in Open ESB. The article addresses the following topics.

  • Overview of Correlations

  • Business Case

  • Implementation in Open ESB

This article assumes that you have basic understanding of Open ESB architecture and BPEL constructs. It also assumes that you are familiar with NetBeans 6.0 IDE.

Overview

As the name states, Correlation is simply associating a message with another message via some identifier. Coming to BPEL Correlations, It allows the business process to be waiting until the correlation message arrives. It is basically used in Asynchronous message exchanges.

Click here to view the complete solution http://ravi-blog.googlegroups.com/web/Correlations_OpenESB_Blueprint.pdf

Thursday, February 5, 2009

SOAP BC in Open ESB

This article describes the instructions of SOAP BC usage in association with BPEL SE in OpenESB.

SOAP Binding Component provides external connectivity for SOAP over HTTP and BPEL Service Engine allows users to implement the business logic in the BPEL flow.

Objective:

The objective of this exercise is to implement the Business Process to receive the Soap request from client, do transformation and send back the Soap response to client. Soap Binding Component used to receive the soap request and send back the soap response and BPEL Service Engine helps for transformation and other business logic.



Follow this link http://groups.google.co.in/group/ravi-blog/web/Soap.pdf for complete solution