Mediation flows intercept and modify messages that are passed
between existing services (providers) and clients (requesters) that want to
use those services. To create and work with mediation flows, use the mediation
flow editor.
Mediation flows are implemented in mediation modules and can be deployed
to the WebSphere® Enterprise
Service Bus and the WebSphere Process Server.
Mediation services overview
Mediation service applications intercept and modify messages that are passed between existing services (providers) and clients (requesters) that want to use those services. Mediation services are implemented using mediation modules that contain mediation flows.
Mediation Flow editor
The Mediation Flow editor is a graphical programming environment that you use to visually create and manipulate mediation flows.
Samples: Mediation Flow editor
There are several samples that demonstrate the use of the Mediation Flow editor and the Assembly editor.
Creating a mediation flow
A mediation flow consists of a sequence of processing steps that are executed by mediation primitives when an input message is received. Mediation flows can only be contained in mediation modules.
Opening the Mediation Flow editor
Use the Mediation Flow editor to visually compose a mediation service application by defining source and target operations and wiring mediation primitives in the mediation flow component.
Building mediation flows
The Mediation Flow editor generates empty request and response flows and creates their end nodes based on the operation connections or source operation that you define in the Operation connections section of the editor. You then add mediation primitives, wire them between the end nodes, and set the properties of the primitives to complete the flow.
Emitting common base events
You can emit a common base event (CBE) at a significant point in a mediation flow by using an Event Emitter mediation primitive. You can also define the parts of the message that should be contained in the event. Common base events are emitted to the CEI server which can be accessed by many different applications that consume the events.
Creating mappings for the XSL Transformation primitive
When the message types of source and target operations do not match, you need to transform the source message type so that the target operation can receive it. The XSL Transformation primitive uses an XSL style sheet to map source and target message types. This topic describes how to create the XSL stylesheet.
Selecting endpoints dynamically
You can configure your mediation flow component to route messages to endpoints that are determined dynamically at runtime. Since these service endpoints are not statically defined in the mediation flow, you can change service endpoints without the need to update and redeploy the mediation flow.
Implementing custom mediation logic
Custom mediation primitives allow you to implement your own mediation logic by using Java™ code, or to call a service that is external to the mediation flow by invoking an import.
Storing and using properties in the message context
Store a property in the message context so that it is available for use later in the mediation flow. First, add the property as an empty business object in the message context. Then, initialize the property by using a mediation primitive such as Message Element Setter to add a value to the business object attribute.
Changing the value of mediation flow properties at runtime
When you develop a mediation flow, you can identify promoted properties, which are properties whose value the administrator can change at runtime; without restarting the server or redeploying the mediation module.
Error handling in the mediation flow
This topic provides information on various ways to deal with execution errors in the mediation flow, including ways to use the Stop and Fail mediation primitives, where to look for fail information in the message, and how to handle WSDL faults.
Testing and debugging mediation modules
Test a mediation module with the integration test client, and debug a mediation flow using the integration debugger.
Contributing your own mediation primitive plug-in
You can develop your own mediation primitives, and contribute them to the Mediation Flow editor palette. Integration developers can then use these mediation primitives in the same way that you use the supplied mediation primitives, for example Message Filter.
Considerations when refactoring mediation flow artifacts
WebSphere Integration Developer provides a refactoring feature that handles dependencies when you rename, move, or change the namespace of an artifact. However, there are some things that you should take into consideration when refactoring.