The enterprise service bus is built on top of four key architectural components. These are:
- Message listening and message filtering code
Message listeners act as routers that 'listen' for inbound messages (such as those on a JMS queue or topic, or on the file system). They then present the message to a processing pipeline that filters and routes it (via an outbound router) to another message end-point.
- Data transformation components
These are based on Smooks and XSLT.
- A content-based router
This infers a message's destination from the information in its body.
- A message repository
This is used to save messages and/or events that have been exchanged via the ESB.
These components, in turn, consist of a set of business classes, adapters and processors.
Client-service interaction is facilitated by a range of different approaches, including JMS, flat-file systems and e-mail.