The core of JBossESB is Rosetta, an ESB that has been in commercial deployment at a mission critical site for over 3 years but it have not follow JBI implementation. However, keeping with SOA principles, everything within JBossESB is considered to be either a service or a message. When would you use an ESB or JBossESB? There are a lot cases where JBossESB would be useful. In my case I wanted to try the Transformation Engine service integrating different systems. Even I use the jBPM as orchestrator of business models, the JBossESB allows me (apart from transformation) to use its services (a set of sequential actions) for the performance of specific tasks synchronously or asynchronously. The diagram below shows JBossESB arquitecture:

I know that there are more Open Source ESB solutions as MuleESB but I decided to use JBossESB, creating a good SOA platform with JBossESB+jBPM (jPDL notation). Here are the Open Source ESB options:

  • Mule: Lightweight ESB with a custom implementation model.
  • Apache ServiceMix: Apache JBI implementation with a lot of JBI components.
  • Open ESB: ESB developed by SUN with tool support from the NetBeans IDE.
  • Apache Synapse: ESB focused on web services support based on Apache Axis2.
  • JBoss ESB: The JBoss implementation of an ESB based on JBoss messaging.
  • Apache Tuscany: Implementation of the Service Component Architecture (SCA) specification.
  • Fuse ESB: Iona’s Open Source ESB offering based on Apache ServiceMix.
  • WSO2 ESB: WSO2’s Open Source ESB offering based on Apache Synapse.
  • PEtALSh: Another JBI based ESB, that is hosted by OW2 (former ObjectWeb).
  • OpenAdapter: AI based platform that provides a number of adaptors to implement integration solutions.
  • Another comparison: Wikipedia

Installation is simple. The software JBoss Tools (JBoss plugin for Eclipse integration) we can use all the solutions offered by JBoss, including JBossESB. Installation source includes several examples for easy understanding of JBossESB features and functionality.

All this does not mean that my choice is the best, it is one more. I do not discard (or, more likely) to try other solutions in the future. What is your choice? Why?

To sum up, as I said more than once, using the ESB can not see always justified. Not because we want to create a SOA arquitecture is essential to use the ESB or a BPM solution, we can also use ETL or just design a service oriented architecture. So I want to emphasize that the ESB can help in some cases but maybe not in others.

What’s next? In the next post I will resume my visit to SIMO Network ICT meeting.