ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Service Bus開発者ガイド
11gリリース1 (11.1.1.6.2)
B61435-05
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
 

A トランスポートSDK UMLシーケンス・ダイアグラム

この章では、UMLシーケンス・ダイアグラムを示し、Oracle Service Busランタイムを使用したメソッド呼出しのフローについて説明します。

この章の内容は以下のとおりです。

A.1 Oracle Service Busランタイムのインバウンド・メッセージ

図A-1のシーケンス・ダイアグラムに、Oracle Service Busランタイムでのインバウンド・メッセージのフローを示します。

最初に、HTTP Servletなどのインバウンド・アーティファクトが、クライアント・リクエストを受け取ります。トランスポート・プロバイダが、InboundTransportMessageContextと呼ばれるデータ構造を作成します。メッセージ・コンテキストが、リクエストのヘッダーをメタデータ・オブジェクトにパッケージ化し、HTTPストリームのペイロードを特定のOracle Service Busソース・オブジェクトに変換します。トランスポート・プロバイダは、トランスポート・マネージャを呼び出し、メッセージを受信します。トランスポート・マネージャがメッセージを処理し、Oracle Service Busランタイムでの処理に渡します。Oracle Service Busランタイムは、メッセージ・コンテキストのサービス、サービスのバージョン、およびその他の情報を要求します。また、処理に必要なメタデータおよびペイロードについても要求します。ランタイムは、レスポンス・メタデータおよびレスポンス・ペイロードを作成するようMessageContextに要求し、その後でclose()を呼び出します。クライアントにレスポンスが返されます。

図A-1 ランタイムにおけるインバウンド・メッセージ

図A-1の説明が続きます
「図A-1 ランタイムのインバウンド・メッセージ」の説明

A.2 Oracle Service Busランタイムのアウトバウンド・メッセージ

図A-2のシーケンス・ダイアグラムに、Oracle Service Busランタイムでのアウトバウンド・メッセージのフローを示します。

Oracle Service Busランタイムは、メッセージを外部サービスにルーティングします。トランスポート・プロバイダはリクエストのメタデータおよびTransportSenderオブジェクトを作成します。このオブジェクトには、ペイロード、サービス品質および再試行に関する情報が含まれます。次に、プロバイダは、(トランスポート・サブシステムの中心となるハブである) TransportManagerを呼び出し、メッセージを非同期で送信します。TransportManagerは、トランスポート・プロバイダを呼出しメッセージを送信します。トランスポート・プロバイダはOutboundTransportMessageContextを作成します。その後、トランスポート・プロバイダは、メタデータ、ペイロードおよびその他の情報を要求し、適切なアクションを実行します。たとえば、JMSメッセージの場合、トランスポート・プロバイダは、JMS APIを使用してヘッダーおよびペイロードにデータを設定し、プロトコル固有の送信操作を呼び出します。

レスポンスを受信すると、トランスポート・プロバイダはTransportSendListenerオブジェクトを呼び出します。最終的に、トランスポート・マネージャがレスポンス・パイプラインを呼び出します。パイプライン・アクションが実行された後、アウトバウンド・エンドポイントが閉じられます。

図A-2 ランタイムにおけるアウトバウンド・メッセージ

図A-2の説明が続きます
「図A-2 ランタイムのアウトバウンド・メッセージ」の説明

A.3 設計時のサービスの登録

サービスの登録時には、ウィザードによって複数のOracle Service Bus管理コンソールのページが表示されます。図A-3に、サービスの登録プロセスを示します。基本的な手順は以下のとおりです。

最後に、トランスポート・プロバイダは、エンドポイント構成を検証し、新しいエンドポイントを登録するよう求められます。エンドポイントは、アクティブ化が実行された後にのみ作成されます。

図A-3 サービスの登録

図A-3の説明が続きます
「図A-3 サービスの登録」の説明