WebSphere Message Broker V7における「パターン」のご紹介

WebSphere Message Broker V7で、メッセージ・フローの開発における「パターン」を導入しました。「パターン」は特定のコンテキストにおける共通アーキテクチャー、デザイン、デプロイメント・タスクをカプセル化する、再利用可能なソリューションです。

Ant Phillips, Software Developer, IBM

Photo: Ant PhillipsAnt Phillips はイギリス・ハーズレーのJavaテクノロジー・センター所属のソフトウェア開発者です。彼が現在注力しているのは、ダイナミックなWebアプリケーションを作成するためのシンプルな環境である WebSphere sMashです。 IBMに入社する前はAntはイギリス・ニューベリー社での革新的なテクニカル・リーダーでした。また、以前にはSony®やMicrosoft®社でも働いており、その間東京やシアトルを訪問していました。その合間に妻と二人の子供たちとともにスポーツをおおいに楽しんでいます。



2009年 10月 06日

初めに

「パターン」 は、一般的に発生する問題を解決し、めざす目的や目標に対応するためのものです。「パターン」の仕様は対応すべき問題、なぜそれが重要であり、解決における制限を記述します。 「パターン」は一般的に共通の使用法や特定の製品やテクノロジーのアプリケーションから出現します。「パターン」は効率的に何度も起こる問題に対するカスタマイズされたソリューションを生成するために使用することができます。

IBM® WebSphere® Message Broker V7は以下の「パターン」を提供します

  • ソリューションを実装するためのガイダンスを提供
  • 事前定義された一連のテンプレートから生成されたリソースなので、開発が効率化
  • アセットの再利用やエラー・ハンドリングやロギングのような共通機能の実装により品質を向上

「パターン」の概要

「パターン」使用の最初のステップは、正しいものを選択することです。Message Broker Toolkitにはパターン・エクスプローラーというビューが追加され、「パターン」のカタログと詳細なヘルプを提供します。ヘルプは特定の問題に対する解決のための適切な.「パターン」を選択するようにガイドします。 例えば、Webサービスのフロントと、そこからのリクエストをWebSphere MQのキューに書き出すような実装を行いたい場合などです。パターン・エクスプローラーがサービス・ファサードという「パターン」のカテゴリーにあなたを導きます。

各 「パターン」はパターン・パラメーターと呼ばれる値を持ちます。パターン パラメーターは各「パターン」に依存し、「パターン」のオプションを使用可能にします。パターン・パラメーターの例として、メッセージを取得するためのキュー名などがあります。「パターン」はほとんどすべてのパターン・パラメーターに対してデフォルト値を提供しており、説明のためのヘルプが提供されています。

パターン・パラメーターを構成すると、パターンインスタンス・プロジェクトが生成されますが、それはパターン・インスタンス構成ファイルを含むMessage Broker プロジェクトです。この構成ファイルはあなたが構成したパターン・ パラメーターを保存します。生成後には、一般的に「パターン」を実装するためのメッセージ・フローとその他のMessage Broker成果物を含む一つ以上のMessage Brokerプロジェクトが作成されます。

パターン・パラメーターの値を確かめるために、パターン・インスタンス構成ファイルをいつでもオープンすることができます。パターン構成ファイルを再オープンしてMessage Brokerプロジェクトを再生成することができます。再生成により、生成されたMessage Brokerプロジェクトは削除され、最初から再作成されます。プロジェクトに加えたなんらかの変更を失わないために、プロジェクトが完全に削除され、再作成されることを覚えておいてください。

最後のステップは、生成されたプロジェクトに対してBroker Archive (BAR)ファイルを作成することです。BARファイルをデプロイし、フローをテストすることができます。 WebSphere MQキューなどの新規リソースを作成する必要もあるかもしれません。パターン・インスタンス・プロジェクトはパターン・インスタンス構成ファイルと同様にHTMLサマリー・ファイルを含みます。サマリー・ファイルは必要とされる追加のタスクの説明セクションを含みます。例えば、キューの作成などです。

パターン・ パラメーター のいくつかは、生成された成果物に対する根本的な変更を行います。例えばロギングやエラー処理を選択した場合、生成されたプロジェクトには追加のメッセージ・フローやESQLスクリプトが含まれます。この例ではメッセージ・フローがエラーやログ・メッセージを書き込むためのWebSphere MQキューを作成する必要があります。

前準備

この記事では皆さんがWebSphere Message Brokerの基本に習熟しておられることを前提とします。マシンにブローカー・ランタイムとツールキット、Message Broker Ex;plorer(MBX)を含むMessage Broker V7が導入されているものとします。この記事では、必要なWebSphere MQキューとMessage Broker実行グループのセットアップの方法を示します。

この記事ではMessage Broker Toolkitのブローカー・ビューを用いてブローカーの作成と構成を行います。

Message Broker V7で使用可能な「パターン」を見てみましょう。特に サービス・ファサード 肯定応答を伴うMQ一方向パターンに注目しましょう。これはメッセージのWebSphere MQ のキューにリクエストの書き込みを行うWebサービス・ファサードを作成します。ブローカーにこの「パターン」のインスタンスをデプロイし、Message Broker のテスト・クライアントを用いてこのパターン・インスタンスを実行してみましょう。

サービス・ファサード MQ要求/応答パターンのインスタンスもデプロイして, Webサービス・リクエストをWebSphere MQキューに書き込みます。一方向の 「パターン」と違って、この「パターン」は Web サービス・リクエストに対して返答する前にWebSphere MQ のレスポンス・メッセージを待ち受けます。この「パターン」を実行するにはrfhutilユーティリティーをダウンロードする, 必要があります。これはよく知られたIBMのサポート・パックです。

最後にMessage Broker Explorer (MBX)を用いてWebSphere MQのキューを作成し、モニターします。

ローカル・ブローカーを作成

最初のタスクはブローカーと実行グループを作成してこの「パターン」を実行することです。Message Broker V7ではツールキットに「ブローカー管理」パースペクティブはありません。すべての管理機能はMessage Broker Explorer (MBX)で行います。MBXを補完するために、ブローカーの「アプリケーション開発」ビューを呼び出す新しいビューが用意されました。そこではブローカーの作成、開始、停止およびBARファイルのデプロイを行うことができます。

このセクションではブローカー・ビューによりローカル・ブローカーを作成します。

  1. Message Brokerツールキットを開始し、「Message Brokerアプリケーション開発」パースペクティブに切り替えます。
  2. 「ブローカー」ビューで、 「ブローカー」 を右クリックし、「新規」→「ローカル・ブローカー」を選択します。
  3. ブローカーとブローカー・キュー・マネジャーの名前を入力します。Microsoft® Windows® ではブローカーを稼動するためのWindowsサービスを構成するのに使用するユーザー名を入力する必要があります。
  4. ブローカーを作成するために「終了」 ボタンをクリックします。「ブローカー」ビューにブローカーが表示されます。
    図 1. 「ブローカー」ビューに表示されたローカル・ブローカー
    「ブローカー」ビューに表示されたローカル・ブローカー
  5. MBXを開始します。ローカル・ブローカーがナビゲーターに表示されています。

おめでとうございます! ローカル・ブローカーが正しく作成され、「パターン」をテストする準備ができました。次のセクションでは「パターン」のインスタンスを作成し、ローカル・ブローカーにそれをデプロイします。

「パターン」の検査

現在のワークスペースの 「ブローカー開発」ビューが以下の図 2のように表示されています。 ビューは三つのセクションにわかれています。

  • 一番上のセクションには現在のワーキングセットの名前か、 アクティブなワーキング・セットがなければ、<すべてのリソース>と表示されています。
  • 真ん中のセクションには 「パターン・インスタンス」と表示されていますが、それはパターンが生成された後の構成情報を含む Message Brokerプロジェクトです。まもなくそれがどう動くかをごらんになることができます。
  • 一番下のセクションにはメッセージ・フロー・プロジェクトやJavaプロジェクトのような標準のMessage Brokerプロジェクトが表示されます。もしワークスペースに標準のプロジェクトがない場合には一番下のセクションには「クイック・スタート」が表示されます。
    図 2. ブローカー開発ビュー
    ブローカー開発ビュー

「パターン・エクスプローラ」ビューにMessage Broker 「パターン」が表示されます。「パターン・エクスプローラ」ビューにナビゲートするにはいくつかの方法があります。

  1. 「パターン・エクスプローラ」タブをクリック
  2. ブローカー開発ビューの「パターン・インスタンス」セクションで「新規」をクリック
  3. ブローカー開発ビューの「クイック・スタート」 セクションの「パターンから開始」をクリック
    図 3. 「パターン・エクスプローラ」ビューへのナビゲート
    「パターン・エクスプローラ」ビューへのナビゲート

「パターン」の仕様の表示

パターン・エクスプローラでツリーの最上位にある「パターン」ラベルをクリックします。「パターン」についての紹介情報が表示されます。「パターン」ラベルの下にはアプリケーション統合やファイル処理のような最上位レベルの「パターン」があります。次のレベルはより特定されたカテゴリーです。例えば、ファイル処理の下にはレコード配布というカテゴリーがあります。 「パターン」を含む「パターン・エクスプローラ」のリーフ・ラベルがインスタンス化可能なものです。アイコンはリーフ・パターンとは異なり、インスタンス化できることを示します。

肯定応答を含むMQ一方向パターンをクリックします。「パターン」仕様が、「パターン」のフルネーム、確認応答を伴う WebSphere MQ 一方向へのサービス・ファサードと、「パターン」についての情報、「パターン」を使うべき場合、制限などとともにMessage Broker Toolkit に表示されます。

「パターン・エクスプローラー」は解決すべき問題をかかえている場合には非常によいスタート・ポイントになります。 パターン・エクスプローラの階層レイアウトでハイレベルの「パターン・カテゴリー」 (抽象化されたパターン)からインスタンス化することのできる具体的な 「パターン」にナビゲートされます。

パターン・インスタンスの作成

確認応答を伴う WebSphere MQ 一方向へのサービス・ファサードパターンのインスタンスを作成するために、「パターン仕様の表示」の最後にある新規インスタンスの作成 ボタンをクリックしてください。パターン・インスタンスの名前としてOneWayを入力して OKボタンをクリックしてください。

パターン・インスタンスを構成するための パターン構成エディターが表示されます。 パターン・パラメーターがサービス情報、ロギング、エラー処理のような関連セクションにグルーピングされています。それぞれのセクションを展開アイコンをクリックしてオープンします。 下の図 4には、「パターン・パラメーター”サービスWSDL”は必須ですが、値が設定されていません。」とあります。他のパターン・パラメーターのセクションに対しては緑のチェックマークがついており、その他のパターン・パラメーターはすべてデフォルト値が有効であることを示しています。

図 4. パターン・インスタンス・パラメーターの構成
パターン・インスタンス・パラメーターの構成

インスタンス化しようとしている「パターン」はWebSphere MQキューへのWebサービス・ファサードを作るためのものです。 生成されたメッセージ・フローに到着するWebサービス要求はMessage Brokerを使用したソリューションの共通の課題である、キューへの書き込みを行います。WebサービスはWeb services Description Language (WSDL)によって記述され、「パターン」をインスタンス化するにはWSDLファイルが必要となります。「パターン」を迅速に開始するために、 「パターン・エクスプローラ」にサンプルのWSDLファイルを提供します。

  1. 「クイック・スタート」「サンプルから開始」をクリックし、「その他のサンプル」「Webサービス」から「SOAPノード・サンプル」「詳細情報」を選択します。
  2. 「サンプルをインポートする」をクリックして、サンプル・リソースをワークスペースにインポートします。
  3. ウィザードをクリックして、新しいメッセージ・セット・プロジェクトをワークスペースに作成します。それにはOrderService.wsdl というWSDLファイルが含まれています。
  4. もとの画面の「構成」タブにもどってサービスWSDLの横の「参照」ボタンをクリックします。
  5. 使用可能なWSDLファイルのリストから OrderService.wsdl を選択します。
  6. 最後のステップは「生成」ボタンをクリックしてパターン・インスタンスを生成することです。

プロジェクトとファイルの生成

以下の図 5に示すように、プロジェクトがワークスペースに生成されます。 最初のプロジェクトはOneWayというパターン・インスタンス・プロジェクトです。それにはパターン構成エディターで構成されたパターン・パラメーターを含むXMLファイルが入っています。

図 5.パターン・インスタンスのために生成されたプロジェクト
パターン・インスタンスのために生成されたプロジェクト

パターン・インスタンス・プロジェクトにはOneWay_summary.htmlというサマリー・ファイルも含まれています。それにはパターン・インスタンス・プロジェクトの説明記述が書かれています。サマリー・ファイルにはパターン・インスタンスが成功裏にデプロイできるようにあらかじめ実行すべきタスクも含まれています。

図 6. パターン・インスタンスに対するサマリー・ファイル
パターン・インスタンスに対するサマリー・ファイル

パターン・インスタンス・プロジェクトの下に、OneWay_Flowsという二番目のプロジェクトがあり、それにはメッセージ・フローやESQLスクリプトのようなMessage Brokerの成果物が含まれています。これらの成果物は「パターン」を実装したものであり、ブローカーに対してデプロイすることができます。しかし、最初にサマリー・ファイルをよく読んでみましょう。「完了するタスク」のセクションには、ERRORとPROVIDERというWebSphere MQの二つのキューを作成する必要があることが書かれています。これらのキュー名はパターン・パラメーターであり、パターン構成エディターで変更することができます。

キューの作成

メッセージ・フローをデプロイする前に「パターン」に必要なキューを作成します。

  1. MBXに切り替えます。
  2. MB7QMGRキュー・マネジャーの下で、キューを右クリックして、 「新規」→「ローカル・キュー」を選択します。
  3. キュー名として ERRORを入力して、OKボタンをクリックします。
  4. 二番目のキューとしてPROVIDERを入力します。これで二つのローカル・キューが作成されました。
    図 7. ERRORとPROVIDER キュー
    ERRORとPROVIDER キュー

生成されたメッセージ・フローのデプロイ

次のステップは生成されたメッセージ・フローをデプロイすることです。BARファイルが必要になります。

  1. OneWay_Flows を右クリックして、 「新規」→「Message Brokerアーカイブ」を選択します。
  2. BAR ファイルのプロジェクト名前を構成し、「終了」ボタンをクリックします。
  3. BARファイル・エディターでメッセージ・フローとメッセージ・セットを選択します。
    図 8. Message Brokerアーカイブのリソース選択
    Message Brokerアーカイブのリソース選択
  4. BARファイルのビルドと保存を行います。メッセージ・フローのデプロイの準備ができました!
  5. BARファイルをブローカー・ビューの実行グループにドラッグアンドドロップします。BARファイルが以前に作成した実行グループにデプロイされます。
    図 9. ローカル・ブローカーにデプロイされた、生成されたメッセージ・フロー
    ローカル・ブローカーにデプロイされた、生成されたメッセージ・フロー

Message Brokerテスト・クライアント

Webサービスを実行するために、Message Brokerテスト・クライアントを使用します。

  1. 「ファイル」→「新規」をクリックし、Message Brokerカテゴリーから「Message Brokerテスト・クライアント」を選択します。
  2. Message Brokerテスト・クライアントのプロジェクトと名前を構成し、 OKボタンをクリックします。新しいMessage Brokerテスト・クライアント・ファイルが作成され、エディターがオープンされます。
  3. メッセージ・フローをテストのために構成する必要があります。エディターの下部の「構成」タブに切り替えメッセージ・フローをクリックし、追加をクリックします。
  4. リソース・ダイアログで、Request.msgflow を選択し、OKボタンをクリックします。
  5. デプロイメントをクリックし、「指定されたブローカー・アーカイブを手動でデプロイします」オプションを選択します。参照ボタンをクリックしてBARファイルを選択しなければなりません。
    図 10. Message Brokerアーカイブの手動デプロイを選択
    Message Brokerアーカイブの手動デプロイを選択
  6. 最後のタスクはWebSphere MQの設定を構成することです。 MQ設定をクリックし、「最初のMQメッセージが受信された際に停止」の選択を解除します。「MQ出力キューからメッセージを参照」 を選択します。これらのオプションはERRORと PROVIDERキューにメッセージが届いた時にテスト・クライアントがどのように動作するかを指定します。Webサービスの要求/応答によってフローをテストするので、キューを監視するためにだけテスト・クライアントが必要です。(翻訳者注:日本語環境ではキュー・マネジャー接続パラメーターの文字セットIDに932を指定してください。)
    図 11. WebSphere MQ設定の構成
    WebSphere MQ設定の構成
  7. イベント・タブに戻ります。以下の図 12に示すようなWebサービス要求を確認します。テストのために構成したフローを見ることによって、テスト・クライアントで行いました。テスト・クライアントはメッセージ・フローで構成したWSDLファイルを解析し、適切なWebサービス要求を組み立てて、フローに送付します。非常に便利です。Webサービス要求の詳細は注文要求を初期化するために送付する購入要求を表しています。
    図 12. 購入注文のWebサービス要求
    購入注文のWebサービス要求
  8. ドロップダウンから「テキストとして編集」を選択することにより、要求のテキスト・バージョンを見ることができます。
  9. そのままWeb サービス要求をメッセージ・フローに送付します。テスト・クライアントのツールバーで「開始」をクリックし、デプロイメント・ロケーションダイアログが開いたら「終了」ボタンをクリックします。次の一連のイベントが表示されます。
    図 13. Message Brokerテスト・クライアントのイベント
    Message Brokerテスト・クライアントのイベント
  10. 「HTTP応答メッセージを受信」をクリックします。メッセージ・フローから戻ってきた応答メッセージが表示されます。購買注文が受け付けられたことがわかります。
    図 14. メッセージ・フローからの応答メッセージ
    メッセージ・フローからの応答メッセージ
  11. 「MQキュー・モニター”PROVIDER”」イベントをクリックします。以下の図 15に示すように、メッセージ・フローによってPROVIDERキューにPUTされたメッセージをテスト・クライアントが表示します。メッセージ・フローはWebサービス要求を受けつけ、PROVIDERキューに要求メッセージをPUTします。実際には、PROVIDERキューを監視し、到着した購買注文要求を実行するアプリケーションが必要になります。
    図 15. PROVIDERキューに書かれたメッセージ
    PROVIDERキューに書かれたメッセージ

おめでとうございます! 正しくWebSphere MQ キューへのWebサービス・ファサードパターンのデプロイと実行が終わりました。

MBXでキューを確認

図 16. テスト実行が完了した後のキュー項目数
テスト実行が完了した後のキュー項目数
  1. MBXに切り替え、PROVIDERキューを右クリックして「メッセージの参照」を選択します。キュー上のメッセージ・リストがメッセージ・ブラウザーのダイアログに表示されます。
    図 17. PROVIDERキューから表示されるメッセージの選択
    PROVIDERキューから表示されるメッセージの選択
  2. メッセージを右クリックして「プロパティー」→「データ」を選択します。テスト・クライアントを用いて送ったWebサービス要求がプロパティー・ウィンドウに表示されます。
  3. PROVIDERキューからメッセージをクリアすることもできます。 キュー名を右クリックし、 「メッセージの消去」 を選択します。「MQGET API呼び出しを利用してキューを消去する」 を選択して「消去」ボタンをクリックします。キューをクリアすることで、フローのテストとデバッグの際の混乱を防ぎます。

パターン・インスタンス・プロジェクトの削除

この記事の次のセクションを始める前にはリソースをクリアします。実行グループを右クリックして「削除」→「すべてのフローとリソース」を選択します。ブローカー開発ビューでパターン・インスタンス・プロジェクトを右クリックし「削除」を選択します。削除のダイアログでパターン・インスタンス・プロジェクト とメッセージ・フロー・プロジェクトを削除します。

Webサービス要求/応答パターンの作成

デプロイした サービス・ファサード 肯定応答を伴うMQ一方向パターンはWebサービス要求をWebSphere MQキューに書き出すものでした。このセクションでは、サービス・ファサード MQ要求/応答というもっと複雑なパターンを用います。このパターンもWebサービス要求を WebSphere MQキューに書き出します。このパターンの違いはWebサービスの応答を送る前に応答キューで応答メッセージを待つというこしとです。

  1. パターン・エクスプローラのMQ 要求/応答 パターンを右クリックし「新規インスタンスの作成」を選択します。
  2. パターン・インスタンス名としてRequestResponseを入力します。
  3. パターン構成エディターで、サービス WSDL参照ボタンをクリックしOrderService.wsdlを選択します。
  4. 妥当性検査パラメーターとして「内容と値」 を選択します。これは生成されたメッセージ・フローですべてのWebサービス要求/応答の妥当性検査をするということです。
  5. ロギング・セクションを開き、「必要なロギング」 をチェックします。
  6. 「パターン・インスタンスと生成メッセージ・フローを作成するために「生成」ボタンをクリックします。
    図 18.パターン・インスタンス・パラメーターの構成
    パターン・インスタンス・パラメーターの構成

    パターン・インスタンスのサマリー・ファイルには作成すべき追加のキューについて示しています。-- RESPONSE, STORE, ERROR, LOG およびPROVIDER.

生成されたメッセージ・フローのデプロイ

  1. MBXで追加のキューを作成します。 (RESPONSE, STOREおよびLOG)
    図 19. 要求/応答パターンで必要な追加のキュー
    要求/応答パターンで必要な追加のキュー
  2. 生成されたメッセージ・フローを含むBARファイルの作成とローカル・ブローカーへのデプロイを行います。
    図 20. ブローカーに対してデプロイされたパターン・インスタンス
    ブローカーに対してデプロイされたパターン・インスタンス

生成されたフローの実行

それでは生成されたメッセージ・フローの実行をしてみましょう。

  1. Message Brokerテスト・クライアント・ファイルをもう一つ作成します。
  2. テストのメッセージ・フローを構成する必要があります。エディターの最後にある構成タブに切り替えます。「メッセージ・フロー」をクリックして「追加」ボタンをクリックします。
  3. リソース・ダイアログでRequest.msgflowを選択してOKボタンをクリックします。
  4. 「デプロイメント」をクリックしてBARファイルを手作業でデプロイするオプションを選択します。「参照」ボタンをクリックしてBARファイルを選択する必要があります。
  5. MQ設定をクリックして「最初のMQメッセージが受信された際に停止」を選択していないことを確認します。「MQ出力キューからメッセージを参照」を選択します。これらのオプションは ERRORとPROVIDERのキューにメッセージが到着したときのテスト・クライアントの動きを指定するものです。
  6. 「開始」をクリックします。前と同様のイベントの動きを見ることができます。けれども今度は応答メッセージは受け取られません。なぜならメッセージ・フローはWebサービスの応答を送る前にWebSphere MQのキューに応答メッセージが到着するのを待っているからです。
    図 21. Message Brokerテスト・クライアントによるパターン・インスタンスの実行
    Message Brokerテスト・クライアントによるパターン・インスタンスの実行
  7. MBXに切り替えてキューを調べます。PROVIDER, STOREおよびLOGキューに送付されたメッセージを見ることができます。
    図 22. Web サービス要求の送信後のキュー状況
    Web サービス要求の送信後のキュー状況

PROVIDER のメッセージはテスト・クライアントから送られたWebサービス要求です。 (この動きは前の一方向パターンと変わっていません。)LOGメッセージはメッセージ・フローが完了するたびに生成されたメッセージ・フローによって作成されます。

このパターンのキー・コンセプトは要求および応答の処理を分けて理解するためのものです。要求メッセージ・フローはWebサービスの要求を受け取り、PROVIDERキューに書き出して終了します。 (LOGキューに対してメッセージを書いた後)。応答メッセージ・フローはRESPONSEメッセージ・キュー待ちとなります。メッセージが到着すると要求と応答のメッセージを関連付け、(これはSTOREキューを用いて行われます) 応答を送付します。応答メッセージ・フローが処理を終了するときには、LOGキューにメッセージを送ります。

実際のデプロイメントでは、アプリケーションがPROVIDERキューからのメッセージを処理し、RESPONSEキューに対して応答を送付します。動きをシミュレートするために rfhutil を用います。

  1. rfhutilを開始し、Queue ManagerにMB7BROKERを入力します。
  2. Queue Name.にPROVIDERを入力します。
  3. Read Q ボタンをクリックし、PROVIDERキューからのメッセージを読み込みます。
  4. Data タブをクリックし、テスト・クライアントから送られたWebサービス要求を確認します。
    図 23. PROVIDERキューに書き込まれたメッセージ
    PROVIDERキューに書き込まれたメッセージ

    PROVIDERキュー上のメッセージにはメッセージIDが含まれています。それは要求と応答の関連付けをするために生成されたメッセージ・フローで使用されます。RESPONSEキューに送るメッセージには同じメッセージIDがついていなくてはいけません。

  5. Ids => Save Msg Id をクリックして PROVIDERのメッセージIDを保存します。
  6. 以下のXMLの内容をテキスト・ファイルにコピーアンドペーストしてディスクに保存します。
    リスティング 1. Webサービス応答メッセージ
    <test:submitPOResponse xmlns:test="http://www.acmeOrders.com/OrderService">
    <orderStatus>OK</orderStatus>
    <orderAmt>999</orderAmt>
    <partNo>1234</partNo>
    <partQuantity>5</partQuantity>
    </test:submitPOResponse>
  7. Main ページでOpen File をクリックし、作成したファイルをオープンします。
  8. Ids => Restore Msg Id をクリックし、PROVIDERのメッセージIDをリストアします。
  9. MQMDタブをクリックし、リストアされたメッセージIDを確認します。
    図 24. RESPONSEのメッセージID
    RESPONSEのメッセージID
  10. Mainタブで Queue Name を RESPONSE に変更します。
  11. Write Qをクリックしてテスト・クライアントのイベント・ビューに戻します。
    図 25.Message Brokerテスト・クライアントにおける応答メッセージ・イベント
    Message Brokerテスト・クライアントにおける応答メッセージ・イベント

    テスト・クライアントによって受け取られた応答メッセージを確認します。Webサービス要求を送ってからRESPONSEキューに応答メッセージを書き込むまでに3分以上かかると、テスト・クライアントがタイムアウトします。この場合、Webサービス要求を再送し、 rfhutil でのアクションを繰り返す必要があります。

  12. 「HTTP応答メッセージを受信」 をクリックし、次の応答メッセージを確認します。
    図 26.パターン・インスタンスからの応答メッセージ
    パターン・インスタンスからの応答メッセージ

    このメッセージはファイルに保存したXMLメッセージとRESPONSE キューに書き出されます。フローはそれをPROVIDERキューに送られた要求メッセージとマッチングをかけます。それはSTOREキューを使って行われます。応答メッセージ・フローはそれからテスト・クライアントに対し応答を送ります。

おめでとうございます! これでサービス・ファサード MQ要求/応答パターンの作成、デプロイ、実行がうまくいきました。二つのMessage Broker パターンがうまく稼動しました。他のものもテストしてみませんか。サービス・ファサード MQ要求/応答 パターンを実装する生成フローの詳細にも精通したことと思います。

最後に

この演習で、

  1. Message Brokerのパターンとパターン・エクスプローラについて学習しました。
  2. 新しいブローカー・ビューでローカル・ブローカーを作成しました。
  3. サービス・ファサード 肯定応答を伴うMQ一方向 パターンのインスタンスを作成しました。
  4. Message Brokerテスト・クライアントを用いてパターンのデプロイと実行を行いました。
  5. サービス・ファサード MQ要求/応答 パターンのインスタンスを作成しました。
  6. Message Brokerテスト・クライアントおよびrfhtuilを用いてパターンのデプロイと実行を行いました。
  7. Message Broker Explorer (MBX)を用いてキューの作成と監視を行いました。

参考文献

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=WebSphere
ArticleID=465624
ArticleTitle=WebSphere Message Broker V7における「パターン」のご紹介
publish-date=10062009