プロジェクトでの HTTP バインディングコンポーネントの使用

HTTP バインディングコンポーネントのシナリオ例

次の注文書の例は、複合アプリケーションで HTTP バインディングコンポーネントを使用する基本的なシナリオを示しています。このシナリオ例では、単一の HTTP バインディングコンポーネントがサービスプロバイダかつサービスコンシューマとして機能します。

注文書の例

医薬品会社が、事前承認済みの顧客だけに一連の製品を掲載した Web サイトを提供しています。このような顧客の 1 つである病院が Web サイトにログオンし、1000 枚の外科手術用マスクと 2000 組のゴム手袋を注文します。注文書は医薬品会社のサーバーによって受信されて保存され、注文が受信されたことを確認する応答が病院に返送されます。

図 1 サービスプロバイダかつサービスコンシューマとして機能する HTTP バインディングコンポーネント

図は、HTTP バインディングコンポーネントの注文書シナリオを示しています。この図については本文中で説明されています。

このシナリオの注文書処理システムは、Sun Java Application Server と JBI フレームワークを使用して実装された Web サービスで表されます。

このシナリオの主体は次のとおりです。

シナリオでのメッセージフロー

注文書シナリオでのメッセージフローのステップは、図 1 の番号に従っています。

  1. Web クライアントは、JavaScript などのクライアント側スクリプト言語を使用して、Web フォームに入力された注文書の情報を取得し、SOAP メッセージにパッケージ化します。SOAP メッセージの形式は WSDL を使用して定義されます。

  2. SOAP メッセージは、HTTP バインディングコンポーネントによってホストされている Web サービスエンドポイントに送信されます。

  3. HTTP バインディングコンポーネントは SOAP メッセージを正規化メッセージに変換します。正規化メッセージは正規化メッセージルーターに送信されます。

  4. 正規化メッセージルーターは正規化メッセージを BPEL SE にルーティングします。

  5. BPEL SE は注文書の情報を解釈し、要求に対応するためにほかの BPEL プロセスを適切に呼び出します。

  6. BPEL SE は正規化メッセージの形式で応答メッセージを作成します。正規化メッセージは正規化メッセージルーターに送信されます。

  7. HTTP BC は応答メッセージを受信し、SOAP メッセージに変換します。SOAP メッセージは、WSDL で定義されている適切な応答として Web クライアントに返送されます。

  8. Web クライアントは応答を受け取り、人間が判読できる HTML ページを作成して、注文書が受け付けられたか拒否されたかをユーザーが理解できるようにします。