You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

The purpose of an Enterprise Service Bus (ESB), also known as a Java Business Integration (JBI) bus, is to provide a mechanism for different applications to communicate in a common or protocol neutral manner. ServiceMix is an implemenation of JSR 208, the JBI specification, and it facilitates the communications between applications.

The Basic example shows how two external 1 applications communicate to each other via the ServiceMix ESB. The techniques used in the Basic example could be used to integrate any external application with ServiceMix and allow it to communicate with another external application or a component within ServiceMix itself. Examples of applications that may need to be accessible to other applications are SAP, Peoplesoft, spreadsheets, etc., or POJOs and EJBs that need to communicate with each other or with a legacy application.

In the Basic example, the external applications communicate using the same protocol, JMS. Therefore, they could communicate directly with each other. The Basic example is a simplification to enable us to concentrate on the logical flow of the messages rather than the details of transforming one type of message into another.

A common scenario in which an enterprise service bus is used is for a Web-based form application to request data from a legacy application, such as Peoplesoft. The Web-based form communicates via HTTP which the legacy application does not understand. Using the ESB, the communication between the applications would flow like this:

  1. U
    legacy/external app <-- resource adapter <-- |binding component (inside ESB) --> NMR -->
    binding component |--> resource adapter --> legacy app.

In comparison, the Basic example, looks like the following diagram. This is a simplified diagram of the basic example. For a complete diagram, please see: xxxx.

Please note: The Basic example uses inbound messages via the resource adapter, and most legacy applications won't support inbound messaging via the resource adapter.
1. External means the application is outside of the enterprise service bus.

  • No labels