メディエーション・モジュールは、サービス要求のフォーマット、内容、またはターゲットを変更できる Service Component Architecture (SCA) モジュールです。
メディエーション・モジュールは、サービス・リクエスターとサービス・プロバイダー間で伝送中のメッセージに対して操作します。 メッセージを異なるサービス・プロバイダーにルーティングでき、またメッセージの内容またはフォームを修正することもできます。メディエーション・モジュールは、ユーザーの要件に合わせて調整したメッセージ・ログイン、およびエラー処理のような 機能を提供できます。
メディエーション・モジュールの一部を、モジュールを再デプロイすることなく、WebSphere® ESB 管理コンソールから変更することができます。
一般に、メディエーション・モジュールは、メディエーション・フロー・コンポーネントと呼ばれる特定のタイプの SCA コンポーネントを含みます。 メディエーション・フロー・コンポーネントは、メディエーション・フローを定義します。
メディエーション・フロー・コンポーネントには、メディエーション・プリミティブを 1 つまたは複数含めることができますが、まったく含めないことも可能です。WebSphere ESB は、メッセージ・ルーティングおよび変換のための機能を提供する、あらかじめ準備されたメディエーション・プリミティブ・セットをサポートしています。より柔軟性の高いメディエーション・プリミティブを求める場合、カスタム・メディエーション・プリミティブを使用して、カスタム・ロジックを呼び出すことができます。
メディエーション・フロー・コンポーネントを含まないメディエーション・モジュールの 目的は、1 つのプロトコルから別のものへとサービス要求を変換することです。 例えば、サービス要求は SOAP/JMS を使用して作成される可能性がありますが、送信前に SOAP/HTTP への変換が必要になることがあります。
メディエーション・プリミティブにはプロパティーがあり、その一部を SCA モジュールの追加プロパティーとして管理コンソールに表示できます。
メディエーション・プリミティブのプロパティーを WebSphere ESB 管理コンソールで表示するには、統合開発者はこのプロパティーをプロモートする必要があります。一部のプロパティーは管理上の構成に適しています。これらのプロパティーは統合サイクルから管理サイクルへプロモートすることが可能であるため、WebSphere Integration Developer はこれらのプロパティーをプロモート可能なプロパティーとして記述します。他のプロパティーは、変更すると メディエーション・モジュールの再デプロイが必要になるような影響をメディエーション・フローに与えるおそれがあるため、管理構成には適しません。WebSphere Integration Developer は、メディエーション・プリミティブのプロモートされるプロパティーの下に、プロモートを選択できるプロパティーを示します。
WebSphere ESB 管理コンソールを使用して、メディエーション・モジュールを再デプロイしたり、サーバーやモジュールを再始動することなく、プロモートされるプロパティーの値を変更することができます。
一般的に、メディエーション・フローはプロパティーの変更を即時に使用します。ただし、デプロイメント・マネージャー・セル内でプロパティーの変更が生じた場合、各ノードで同期化が行われるとそのノード上で変更が有効になります。また、処理中のメディエーション・フローでは、前の値が引き続き使用されます。
メディエーション・モジュールは、WebSphere Integration Developer を使用して作成され、一般にエンタープライズ・アーカイブ (EAR) ファイル内で WebSphere ESB にデプロイされます。
プロモートされたプロパティーの値は、デプロイメント時に変更できます。
WebSphere Integration Developer からメディエーション・モジュールをエクスポートして、WebSphere Integration Developer によりメディエーション・モジュールを Java アーカイブ (JAR) ファイル内にパッケージ化し、その JAR ファイルを EAR ファイル内にパッケージ化できます。この後、管理コンソールから新規アプリケーションをインストールして、EAR ファイルをデプロイすることができます。
メディエーション・モジュールは 1 つのエンティティーと考えられます。ただし、SCA モジュール は、1 つの JAR ファイルに保管されたいくつかの XML ファイルによって定義されます。