HTTP プロキシー・サーブレットには、多数のコンポーネントが必要です。例えば、メッセージ・フロー、プロキシー・サーブレット、サーブレット・コンテナー、 Web アドレス、ブローカー・コンポーネント、および Web サービス・クライアントなどです。 プロキシー・サーブレット・コンポーネントに確実に精通しておいてください。
プロキシー・サーブレット は、WebSphere® Message Broker バージョン 6.1 フィックスパック 3 (6.1.0.3) 以降のランタイム環境の一部である Java™ Web Application Archive (WAR) ファイルで、下記ディレクトリーの中から検索できます。
WMB61_runtime_install_path/tools。 ここで、WMB61_runtime_install_path はランタイムのインストール・ディレクトリー名を示します。
プロキシー・サーブレットとは、HTTP 要求を受信する Java サーブレットのことです。 プロキシー・サーブレットは、受信した Web アドレスと、HTTP 入力ノードまたは SOAP 入力ノードがモニターしている Web アドレスを突き合わせたうえで、WebSphere MQ を使って、HTTPRequest を HTTP 入力ノードまたは SOAP 入力ノードの正しいフローに渡します。
プロキシー・サーブレットは、HTTP Reply ノードまたは SOAP Reply ノードから応答メッセージを受信し、HTTP または HTTPS でクライアント・アプリケーションに返送します。 メッセージ・ブローカーには、内部 WebSphere MQ キュー (SYSTEM.BROKER.WS.* キュー) がいくつかあり、プロキシー・サーブレットと、HTTP または SOAP の入力ノードおよび Reply ノードとの間の通信に使用されます。
HTTP 入力ノードまたは SOAP 入力ノードはそれぞれ、特定の Web アドレス宛の要求の到着をモニターします。 メッセージ・ブローカーは、Web アドレスのリストが登録された内部構成ファイルと内部 WebSphere MQ キュー SYSTEM.BROKER.WS.ACK を持っています。このアドレスを、実行グループにデプロイされたメッセージ・フローで別の HTTP 入力ノードまたは SOAP 入力ノードがモニターします。 プロキシー・サーブレットは、この内部ファイルまたは内部キューにアクセスし、HTTP 要求または HTTPS 要求で受信された Web アドレスと、待機している HTTP 入力ノードまたは SOAP 入力ノードがモニターしている Web アドレスを突き合わせます。
この構成ファイルまたはキューは、各 Web アドレスに関連付けられた一意の相関 ID を持ちます。 HTTP 入力ノードまたは SOAP 入力ノードは、この相関 ID を使って内部キュー SYSTEM.BROKER.WS.INPUT からメッセージを取得します。プロキシー・サーブレットは、同じ相関 ID を使ってメッセージをこのキューに入れます。 これは、着信する HTTP 要求または HTTPS 要求と、メッセージ・フローの HTTP 入力ノードまたは SOAP 入力ノードを相関するために使用されるメカニズムです。
HTTP 入力ノードまたは SOAP 入力ノードは、WebSphere MQ 入力メッセージ ID を、WebSphere MQ 出力メッセージの相関 ID の HTTP Reply ノードまたは SOAP Reply ノードが使用する LocalEnvironment.Destination.HTTP.RequestIdentifier にコピーします。 プロキシー・サーブレットは、応答キュー SYSTEM.BROKER.WS.REPLY に対して、選択可能な「相関 ID で取得」を実行し、応答メッセージを受信します。
プロキシー・サーブレットは、GET および POST HTTP 要求または POST HTTPS 要求を受け入れます。