統合時に定義されたエンドポイントを使用したり、実行時に動的に判別されたエンドポイントを使用したりして、さまざまな方法でメッセージをルーティングすることができます。
動的ルーティングは、フローは動的だが、考えられるすべてのエンドポイントが Service Component Architecture (SCA) モジュール で事前定義されているメッセージ・ルーティング、およびフローが動的で、エンドポイントの選択も動的であるメッセージ・ルーティングを扱います。 後者の場合、サービス・エンドポイントは実行時に外部ソースから選択されます。EJB バインディングを除き、動的ルーティングはすべてのバインディングでサポートされています。
ランタイムには、メッセージ・ヘッダー・エレメントによって識別されるエンドポイント・アドレスにメッセージをルーティングする機能があります。このメッセージ・ヘッダー・エレメントは、メディエーション・フロー内の メディエーション・プリミティブによって更新できます。エンドポイント・アドレスは、レジストリーからの情報、データベース、およびメッセージ自体からの情報で更新できます。
要求時に動的ルーティングをランタイムに実装するには、SCA モジュールで「メッセージ・ヘッダーで設定する場合は動的エンドポイントを使用」プロパティーが設定されている必要があります。統合開発者は、「メッセージ・ヘッダーで設定する場合は動的エンドポイントを使用」プロパティーを設定することができます。または、ランタイム管理者がこのプロパティーを設定できるようにプロモート (実行時に表示) することもできます。「モジュール・プロパティー」ウィンドウでモジュール・プロパティーを表示できます。 ウィンドウを表示するには、 をクリックします。統合開発者はプロモートされたプロパティーに別名を付けます。それらは管理コンソールで表示される名前になります。
IBM® WebSphere® Service Registry and Repository (WSRR) を使用してサービス・エンドポイント情報を保管し、SCA モジュールを作成して WSRR レジストリーからエンドポイントを取得できます。
SCA モジュールを開発する場合、エンドポイント・ルックアップ・メディエーション・プリミティブを使用して、メディエーション・フローが WSRR レジストリーを照会してサービス・エンドポイントまたはサービス・エンドポイントのセットを調べられるようにできます。 SCA モジュールがエンドポイントのセットを取得する場合、別のメディエーション・プリミティブを使用して優先されるものを選択する必要があります。