Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

ServiceMix is an Emterprise Service Bus (ESB) that is based on the Java Business Integration (JBI) standard JSR 208. The JBI-based design specifies a standards-based pluggable architecture with a JVM-based runtime component called the Normalized Message Router (NMR). The Basic example demonstrates how applications communicate via the ServiceMix ESB, and the role that the NMR can play in that communication. Similar techniques could be used to plug any external 1 application or service into ServiceMix (e.g. SAP, Peoplesoft, spreadsheets, POJOs, Webservices and EJBs) and allow it to communicate with other external applications or components using ServiceMix itselfThe BPEL example shows how to integrate the PXE BPEL Engine with ServiceMix. Business Process Execution Language (BPEL) defines a notation for specifying business process behavior based on Web Services. PXE is a runtime component for executing processes defined by the BPEL4WS 1.1 specification and forthcoming WS-BPEL 2.0 OASIS standard. The PXE BPEL engine uses JMX to provide management and introspection functionality.

A hypothetical business scenario, which extends illustrates the Basic ExampleBPEL example, is that of a department store distributor. This distributor sells products from multiple wholesalers (suppliers) to various retailers (customers). The distributor presents a common interface for product ordering to each of its department store customers. However, the distributor must work with a different ordering interface for each wholesale suppliers for the products they are buying.

Using an ESB, the distributor has developed a number of components to receive department store orders and then dynamically route and transform these orders to the appropriate wholesaler. The order processing flow is described as follows:

...

the example of travel agent airline ticketing system that offers online reservations to its customers. When a customer books a flight, the reserveTicket class of the online ticket reservation system publishes its request to the ticketing topic. The Binding Component, which is capable of communicating both to the external reserveTicket class and the Airline Reservation System, is a subscriber to the ticketing topic and thus receives the request. The Binding Component then forwards the request via the NMR to the Airline Reservation System inside the PxeBpelEngine service container. The Airline Reservation System checks its database to see if it can still accommodate the request and generates a response. After that, the Airline Reservation system sends the response back to the Binding Component again via the NMR. The Binding Component then publishes it on the ticketing topic. The reserveTicket class is also a subscriber of the topic and thus receives the message. Whether the request is granted or not, the reply is published to the customer.

The following diagram illustrates this:

...

Panel
borderColor#ccc
titleDepartment Store Distributor's Order Processing Online Ticket Reservation System
borderStylesolid

Image Removed

...

Image Added