Mediation modules are Service Component Architecture (SCA) modules that
can change the format, content or target of service requests.
Mediation modules operate
on messages that are in flight between service requesters and service providers.
They allow you to route messages to different service providers. They also
let you transform messages: you can amend message content or form. In addition, mediation modules can
provide functions such as message logging, and error processing that is tailored
to your requirements.
Components of mediation modules
Among the items
that
mediation modules contain
are the following:
- Imports.
- Imports define interactions between SCA modules and
service providers.
- Imports allow SCA modules to
call external services as if they were local.
- Mediation module imports
can be viewed from WebSphere ESB and
if the import binding is an SCA binding, then it can be modified to point
to another SCA module.
- Exports.
- Exports define interactions between SCA modules and service requesters.
- Exports allow an SCA module to
offer a service. Exports define the external interfaces (access points) of
an SCA module.
- Mediation module exports
can be viewed from WebSphere ESB.
- SCA components.
- SCA components, or service components, are SCA building blocks. You build SCA modules such
as mediation modules,
using SCA components. You can create and customize SCA modules and
components graphically, using WebSphere Integration Developer.
- Typically, mediation modules contain
a specific type of SCA component called a mediation flow component. A mediation module can
contain, at most, one mediation flow component.
- A mediation flow component can contain one mediation primitive, a number
of mediation primitives or no mediation primitives. WebSphere ESB supports
a supplied set of mediation primitives that
provide functionality for message routing and transformation. One of the mediation primitives that WebSphere ESB supports
allows you to invoke custom logic.
- A mediation module does
not have to contain a mediation flow component. The purpose of a mediation module that
does not contain a mediation flow component is to transform service requests
from one protocol to another. For example, a service request might be made
using SOAP/JMS but need transforming to SOAP/HTTP before sending on.
Note: You can view mediation modules from WebSphere ESB.
You can also make limited changes to mediation modules from WebSphere ESB.
However, you cannot view or change SCA components or mediation primitives
from WebSphere ESB.
Use WebSphere Integration Developer to customize
SCA components and mediation primitives.
Figure 1. Simplified example
of a mediation module.
The mediation module contains one mediation
flow component. The mediation flow component contains mediation primitives.
Deploying mediation modules
Mediation modules are
created using WebSphere Integration Developer,
and deployed to WebSphere ESB inside
an EAR (Enterprise ARchive) file. Therefore, a mediation module is
deployed to WebSphere ESB in
the same way you deploy enterprise applications.
WebSphere Integration Developer packages mediation modules inside
JAR (Java ARchive) files, and the JAR files are then stored inside EAR files.
Logically, mediation modules can
be thought of as one entity. In reality, SCA modules are
defined by a number of XML files stored in one JAR file.
- EAR File.
- Contains JAR File.
- Contains Mediation module.
Figure 2. Simplified example of an EAR file containing a mediation module.
The EAR file contains JARs. The utility JAR file contains a mediation
module.
Note: The only kind of SCA modules that
are supported by WebSphere ESB are mediation modules.