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. You are able to route messages to different service providers and to amend message content or form. Mediation modules can provide functions such as message logging, and error processing that is tailored to your requirements.
You can change certain aspects of mediation modules, from the WebSphere® ESB administrative console, without having to redeploy the module.
Usually, mediation modules contain a specific type of SCA component called a mediation flow component. Mediation flow components define mediation flows.
A mediation flow component can contain none, one, or a number of mediation primitives. WebSphere ESB supports a supplied set of mediation primitives that provide functionality for message routing and transformation. If you need additional mediation primitive flexibility, you can use the Custom Mediation primitive to call custom logic.
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 might need transforming to SOAP/HTTP before sending on.
Mediation primitives have properties, some of which can be displayed in the administrative console as additional properties of an SCA module.
For mediation primitive properties to be visible from the WebSphere ESB administrative console, the integration developer must promote the properties. Certain properties lend themselves to being administratively configured and WebSphere Integration Developer describes these as promotable properties, because they can be promoted from the integration cycle to the administrative cycle. Other properties are not suitable for administrative configuration, because modifying them can affect the mediation flow in such a way that the mediation module needs to be redeployed. WebSphere Integration Developer lists the properties that you can choose to promote under the promoted properties of a mediation primitive.
You can use the WebSphere ESB administrative console to change the value of promoted properties without having to redeploy a mediation module, or restart the server or module.
Generally, mediation flows use property changes immediately. However, if property changes occur in a deployment manager cell, they take effect on each node as that node is synchronized. Also, mediation flows that are in-flight continue to use previous values.
Mediation modules are created using WebSphere Integration Developer, and are generally deployed to WebSphere ESB inside an enterprise archive (EAR) file.
You can change the value of promoted properties at deployment time.
You can export a mediation module from WebSphere Integration Developer, and cause WebSphere Integration Developer to package the mediation module inside a Java archive (JAR) file, and the JAR file inside an EAR file. You can then deploy the EAR file, by installing a new application from the administrative console.
Mediation modules can be thought of as one entity. However, SCA modules are defined by a number of XML files stored in a JAR file.