LibraryLink ToToggle FramesPrintFeedback

Chapter 3. The Normalized Message Router

The normalized message router(NMR) is the part of the JBI environment that is responsible for mediating messages between JBI components. The JBI components never send messages directly between each other. Instead, they pass messages to the NMR. The NMR is responsible for delivering the messages to the correct JBI endpoints. This allows the JBI components, and the functionality they expose, to be location independent. It also frees the application developer from worrying about the connection details between the different parts of an application.

The NMR uses a WSDL-based messaging model to mediate the message exchanges between JBI components. Using a WSDL-based model provides the needed level of abstraction to ensure that the JBI components are fully decoupled. The WSDL-based model defines operations as a message exchange between a service provider and a service consumer. The message exchanges are defined from the point of view of the service provider and fit one of four message exchange patterns:

In order to fully decouple the entities involved in message exchanges JBI uses normalized messages. A normalized message is a genericized format used to represent all of message data passed through the NMR. It consists of three parts:

JBI binding components are responsible for normalizing all of the messages placed onto the NMR. Binding components normalize messages received from external sources before passing them to the NMR, The binding component will also denormalize the message so that it is in the appropriate format for the external source.