MQeInput ノード

重要: MQeInput および MQeOutput ノードを含むメッセージ・フローを WebSphere Message Broker バージョン 6.0 で使用することは推奨されていません。ここで説明されている動作は、バージョン 6.0 から前のバージョンにデプロイする場合のみを対象としており、マイグレーションの経路を提供することを意図しています。フローを再設計して、MQe ノードを除去し、独自の仕様に構成され MQe ゲートウェイ構成で調整された MQ ノードに置き換えてください。 詳細については、WebSphere MQ Everyplace ノードを含むメッセージ・フローのマイグレーションを参照してください。

このトピックには、以下のセクションが含まれています。

目的

WebSphere MQ Mobile Transport プロトコルを使用してブローカーに接続するクライアントからのメッセージを受信するには、MQeInput ノードを使用します。

MQeInput ノードは、ブローカーの WebSphere MQ Everyplace キュー・マネージャー上の指定されたブリッジ・キューからメッセージ・フローへ置かれたメッセージを受信します。 このノードは、これらのメッセージの処理環境も確立します。 このノードを含むメッセージ・フローをデプロイする前に、WebSphere MQ Everyplace キュー・マネージャーを作成して構成する必要があります。

WebSphere MQ Everyplace 接続を経由して受信するメッセージを処理するメッセージ・フローは、常に MQeInput ノードから開始されます。 MQeInput ノードのプロパティーを設定すると、メッセージの受信方法を制御できます。例えば、メッセージをトランザクション制御下で処理するように指示できます。

WebSphere MQ Everyplace ノードを含むメッセージ・フローをブローカーにデプロイする場合、メッセージ・フローの数にかかわりなく、単一の実行グループにデプロイする必要があります。 フロー内の WebSphere MQ Everyplace ノードは、すべて同じ WebSphere MQ Everyplace キュー・マネージャー名を指定しなければなりません。 この制限を満たさない場合には、デプロイ時にエラーを受け取ります。

MQeInput ノードは、次のメッセージ・ドメインのメッセージを処理します。

  • MRM
  • XML
  • XMLNS
  • JMSMap
  • JMSStream
  • MIME
  • BLOB

MQeInput ノードで開始されるメッセージ・フローに出力ノードを組み込む場合には、(ユーザー定義の出力ノードを含む) を使用できます。MQeOutput ノードを組み込む必要はありません。必要な任意の変換をブローカーに要求するようにメッセージ・フローを構成できますので、WebSphere MQ Everyplace クライアントからメッセージを受け取り、サポートされる任意のトランスポートを使用してブローカーに接続する クライアント用のメッセージを生成する、メッセージ・フローを作成できます。

WebSphere MQ Everyplace バージョン 1.2.6 は、WebSphere Message Broker によって使用されます。 後者は、これ以降のバージョンの WebSphere MQ Everyplace と互換性があります。 これ以降のバージョンの WebSphere MQ Everyplace (バージョン 2.0 など) を使用するクライアントは、このノードに接続された場合に正しく機能しますが、バージョン 1.2.6 でサポートされていない追加機能 (JMS サポートなど) は機能しません。

キュー・マネージャーは、異なるバージョンの WebSphere MQ Everyplace 同士で交換不能です。 ノードはバージョン 1.2.6 を使用して作成したキュー・マネージャーを使用しなければなりません。 同様に、クライアントは、キュー・マネージャーを作成するとき、自分と同じレベルのコードを使用しなければなりません。

z/OS システム上にデプロイするメッセージ・フローで、MQeInput ノードを使用することはできません。

サブフローとして使用するメッセージ・フローを作成する場合には、標準入力ノードを使用することはできず、入力ノードのインスタンスを最初のノードとして使用して、サブフロー用の in ターミナルを作成する必要があります。

ご使用のメッセージ・フローが WebSphere MQ 接続を経由してメッセージを受け取らない場合には、次の入力ノードのいずれかを選択できます。

ワークベンチでは、MQeInput ノードは次のアイコンで表されます。

MQeInput ノード・アイコン

メッセージ・フロー内での MQeInput ノードの使用

このノードの使用方法の例として、自分の畑に十分に水がまかれているかをチェックする農場主について考慮します。 農場主は、WebSphere MQ Everyplace がインストールされている PDA を持ち歩いています。 水が必要な畑の領域を見ると、農場主は、自分の PDA および Global Satellite Navigation リンクを使用して、メッセージを MQeInput ノードに送信します。 データは Compute ノードを使用して操作され、リモート SCADA 装置がメッセージを取得し、灌漑スプリンクラーをトリガーできるようにメッセージがパブリッシュされます。 農場主は、メッセージを送信した数分後に畑に送達された水を見ることができます。

WebSphere MQ Everyplace 資料

WebSphere MQ Everyplace とそのノードのプロパティーについて詳しくは、WebSphere MQ Web ページ にある WebSphere MQ Everyplace 資料を参照してください。

MQeInput ノードの構成

MQeInput ノードのインスタンスをメッセージ・フローに入れると、MQeInput ノードを構成することができます。 エディター・ビューでノードを右クリックし、「プロパティー」をクリックします。 ノードのデフォルト・プロパティーが、プロパティー・ダイアログに表示されます。

値を入力する必要のある (デフォルト値が定義されていない) すべての必須プロパティーには、プロパティー・ダイアログにアスタリスクが表示されます。

以下のように、MQeInput ノードを構成します。

  1. プロパティー・ダイアログ・ナビゲーターで「デフォルト」を選択して、着信メッセージの構文解析方法を決定するのにノードが使用するメッセージ・ドメイン、メッセージ・セット、メッセージ・タイプおよびメッセージ形式を記述するプロパティーの値を設定し、メッセージに関連したデフォルト・トピックの値を設定します。
    • 着信メッセージに MQRFH2 ヘッダーがある場合には、その MQRFH2 ヘッダーの <mcd> フォルダーから値を取り込めるため、「デフォルト」プロパティーの値を設定する必要はありません。以下に例を示します。
      <mcd><Msd>MRM</Msd><Set>DHM4UO906S001</Set><Type>receiptmsg1</Type>
      <Fmt>XML</Fmt></mcd>

      MQRFH2 ヘッダーの値とは異なる値を設定すると、MQRFH2 ヘッダーの値が優先されます。

    • メッセージ・ドメイン」では、ドロップダウン・リストから使用するパーサーの名前を選択します。 以下の名前から選択できます。
      • MRM
      • XML
      • XMLNS
      • XMLNSC
      • JMSMap
      • JMSStream
      • MIME
      • BLOB
      • IDOC
    • MRM または IDOC パーサーを使用する場合は、「メッセージ・セット」のドロップダウン・リストから、適切なメッセージ・セットを選択します。 このリストには、ドメインとして MRM または IDOC を選択する場合に選択可能なメッセージ・セットが取り込まれます。

      XML、XMLNS、XMLNSC、JMS、MIME、および BLOB パーサーの場合、「メッセージ・セット」はブランクのままにしてください。

    • MRM パーサーを使用する場合は、「メッセージ・タイプ」のドロップダウン・リストから、適切なメッセージ・タイプを選択します。このリストには、選択したメッセージ・セットで定義されたメッセージが取り込まれます。

      XML、XMLNS、XMLNSC、JMS、MIME、IDOC、および BLOB パーサーの場合、「メッセージ・タイプ」はブランクのままにしてください。

    • MRM または IDOC パーサーを使用する場合は、「メッセージ形式」のドロップダウン・リストから、メッセージの形式を選択します。 このリストには、このメッセージ・セット用に定義されたすべての物理形式が含まれます。

      XML、XMLNS、XMLNSC、JMS、MIME、および BLOB パーサーの場合、「メッセージ形式」はブランクのままにしてください。

    • トピック」にメッセージ・トピックを入力します。トピック名として任意の文字を入力できます。メッセージが MQeInput ノードを移動するときは、入力したトピック名を採用します。 (パブリッシュ/サブスクライブを使用する場合は、トピックにサブスクライブして、そのトピック名の下にある MQeInput ノードを通過したメッセージがあればそれを参照することができます。)
  2. プロパティー・ダイアログ・ナビゲーターで「一般」を選択して、次のプロパティーを完成させます。
    1. この入力ノードがメッセージを検索する WebSphere MQ Everyplace ブリッジ・キューの「キュー名」を入力します。 このキューが存在しない場合は、メッセージ・フローがブローカーへデプロイされるときにこのキューが作成されます。
    2. このノードに必要な「トレース」のレベルを設定します。 トレースがアクティブである場合、トレース情報は「トレース・ファイル名」(後述) によって示されるファイルに記録されます。 以下のいずれかを選択します。
      • なし。 これはデフォルト設定です。致命的エラーが発生した場合を除いて、トレース出力は作成されません。
      • 標準。 最小トレース出力が生成され、ノードの操作全体が反映されます。
      • デバッグ。 トレース情報は、WebSphere MQ Everyplace プログラムのデバッグに役立つレベルで記録されます。
      • フル。 入手可能なすべてのデバッグ情報が記録され、ノード・アクティビティーの完全なレコードが利用できます。

      トレース・レベルを「デバッグ」または「フル」に設定すると、WebSphere MQ Everyplace のパフォーマンスに影響を及ぼします。 また、重要なトレース・ファイルが生成される可能性があります。 これらのオプションは短期間の場合にのみ使用してください。

    3. トレース・ファイル名」に、トレース情報が書き込まれるファイルの名前を指定します。 ファイルが指定されるディレクトリー構造がすでに存在していなければなりません。 操作中にこのディレクトリーを作成することはできません。
    4. このメッセージの処理方法についてのトランザクション特性を定義するには、「トランザクション・モード」を選択します。
      • 「自動」を選択した場合、着信メッセージに持続のマークが付けられている場合に同期点下で受信され、そうでないときは受信されません。 出力ノードによってその後に送信される派生メッセージのトランザクション特性は、出力ノードが明示的にトランザクション特性をオーバーライドしない限り、着信持続プロパティーによって判別されます。
      • 「はい」を選択すると、着信メッセージが同期点下で受信されます。 メッセージ・フローと同じインスタンスの出力ノードによってその後に送信される派生メッセージは、出力ノードが明示的にトランザクションをオーバーライドしない限り、トランザクションとして送信されます。
      • 「いいえ」を選択すると、着信メッセージが同期点下で受信されません。 フローの出力ノードによってその後に送信される派生メッセージは、出力ノードがメッセージを同期点下に置くことを指定していない限り、非トランザクションとして送信されます。
    5. 構成ファイル使用」チェック・ボックスはデフォルトでは選択されていません。 MQeInput ノードのすべてのプロパティーの値は、プロパティー・ダイアログから取られます。

      このチェック・ボックスを選択すると、すべてのプロパティーの定義は、以下の例外を除いて、「構成ファイル名」(後述) によって識別されるファイルから取り出されます。

      • キュー名」および「構成ファイル名」一般プロパティー
      • すべてのデフォルト・プロパティー
      ノードに追加プロパティーを指定する場合にのみ、構成ファイルを使用してください。 プロパティー・ダイアログ上のプロパティーだけで十分な場合は、「構成ファイル使用」チェック・ボックスを選択しないでください。
    6. 構成ファイル使用」チェック・ボックスを選択した場合、WebSphere MQ Everyplace 用の構成ファイルの絶対パスおよび名前を「構成ファイル名」に入力してください。 このメッセージ・フローがデプロイされるすべてのブローカーをサポートしているシステムに、このファイルをインストールする必要があります。 このファイルが存在しない場合は、メッセージ・フローをデプロイするときにエラーが検出されます。 デフォルトのファイル名は MQeConfig.ini です。
    7. キュー・マネージャー名」に、WebSphere MQ Everyplace キュー・マネージャーの名前を指定します。 これは、このノードを含むメッセージ・フローのデプロイ先であるブローカーのキュー・マネージャーとは関係ありません。

      1 つの WebSphere MQ Everyplace キュー・マネージャーのみをサポートできます。 1 つの実行グループのみが MQeInput または MQeOutput ノードを含むことができます。 したがって、このプロパティーは、同一のブローカーにデプロイするすべてのメッセージ・フローに組み込まれているすべての MQeInput ノードで同じ値に設定されなければなりません。

  3. プロパティー・ダイアログ・ナビゲーターで「チャネル」を選択し、「最大チャネル」に WebSphere MQ Everyplace がサポートするチャネルの最大数を設定します。 デフォルトは 0 です。 これは、チャネル数に制限がないことを意味します。
  4. プロパティー・ダイアログ・ナビゲーターで「レジストリー」を選択して、次のプロパティーを完成させます。
    1. レジストリー・タイプ」プロパティーのドロップダウン・リストから、レジストリーのタイプを選択します。 以下のいずれかを選択できます。
      • ファイル・レジストリー。 下記の「ディレクトリー」内にレジストリーおよびセキュリティー情報が指定されます。
      • 専用レジストリー。 必要なセキュリティー・パラメーターを指定して、WebSphere MQ Everyplace 内に手動でキュー・マネージャーを作成します。
    2. ディレクトリー」に、レジストリー・ファイルが存在するディレクトリーを指定します。 「ファイル・レジストリー」の「タイプ」を選択した場合にのみ、これは有効です。
    3. 「専用レジストリー」の「レジストリー・タイプ」を選択した場合は、次のプロパティーを完成させてください。
      • 関連したキュー・マネージャーの「PIN」を指定します。 詳細については、WebSphere MQ Everyplace 資料を参照してください。
      • 認証要求のために「認証要求 PIN」を指定します。 詳細については、WebSphere MQ Everyplace 資料を参照してください。
      • 暗号鍵の生成のシードとして使用される「鍵リング・パスワード」を提供します。 詳細については、WebSphere MQ Everyplace 資料を参照してください。
      • 証明ホスト」に、WebSphere MQ Everyplace が認証のために使用する証明サーバーの名前を指定します。 詳細については、WebSphere MQ Everyplace 資料を参照してください。
      • 証明ポート」に、WebSphere MQ Everyplace が認証のために使用する証明サーバーのポート番号を指定します。 詳細については、WebSphere MQ Everyplace 資料を参照してください。
  5. プロパティー・ダイアログ・ナビゲーターで「リスナー」を選択して、WebSphere MQ Everyplace の接続タイプを定義する次のプロパティーを完成させます。
    1. リスナー・タイプ」で、使用するアダプター・タイプをドロップダウン・リストから選択します。 デフォルトは「Http」で、さらに「長さ」または「ヒストリー」も選択できます。 詳細については、WebSphere MQ Everyplace 資料を参照してください。
    2. ホスト名」に、サーバーのホスト名を指定します。 「ホスト名」を特殊値「localhost」または TCP/IP アドレス 127.0.0.1 (デフォルト値) に設定することをお勧めします。 これらのいずれによっても、メッセージ・フローがデプロイされるサーバーのホスト名が解決されます。 ネットワークで有効な任意のホスト名または TCP/IP アドレスを使用することもできますが、メッセージ・フローをデプロイするブローカーごとに異なるメッセージ・フローを使用するか、またはデプロイ時にこのプロパティーを構成する必要があります。
    3. ポート」に、WebSphere MQ Everyplace が listen するポート番号を指定します。 1 つのブローカーにデプロイされるメッセージ・フロー内に複数の MQeInput ノードが含まれる 場合、それぞれの MQeInput ノードはこのプロパティーに対して異なるポート番号を指定しなければなりません。 また、指定する番号がブローカー・システム上の他のリスナー (WebSphere MQ など) と競合しないことを確認してください。 デフォルト値は 8081 です。
    4. 時間インターバル」に、アイドル・チャネルがタイムアウトになるまでのタイムアウト値を秒単位で定義します。 デフォルト値は 300 秒です。

      チャネルは単一のキュー・マネージャー要求より長く続く持続論理エンティティーであり、ネットワークが切断されても持続するため、一定時間アクティブではなかったチャネルをタイムアウトにしなければならないことがあります。

  6. 簡略説明または詳細説明 (あるいはその両方) を入力するには、プロパティー・ダイアログ・ナビゲーターの「説明」を選択します。
  7. 「適用」をクリックすると、プロパティー・ダイアログを閉じずに MQeInput ノードが変更されます。 「OK」をクリックすると、変更を適用してプロパティー・ダイアログを閉じます。

    「キャンセル」をクリックすると、ダイアログを閉じてプロパティーに対して行った変更をすべて破棄します。

ターミナルの接続

MQeInput は、out ターミナルに正常に取り出される各メッセージをルーティングします。 これが失敗する場合、メッセージが再試行されます。 (入力キューの BackoutThreshold 属性によって定義されているように) 再試行タイムアウトの有効期限が切れる場合、メッセージは failure ターミナルにルーティングされます。 ノードをこのターミナルに接続し、この状態を処理することができます。 failure ターミナルに接続しなかった場合、メッセージはバックアウト・キューに書き込まれます。

メッセージ・フロー内でさらに例外がスローされた後、このノードによってメッセージがキャッチされる場合、メッセージは catch ターミナルにルーティングされます。 catch ターミナルに接続しなかった場合、その問題が解決されるまで、メッセージはこのノードでループし続けます。 メッセージがノードを介して連続してループしないようにするために、バックアウト・キューまたは送達不能キュー (DLQ) を定義する必要があります。

整合トランザクションの構成

メッセージ・フローに MQeInput ノードを組み込む場合、「トランザクション・モード」プロパティーで設定する値が、メッセージを同期点下で受信するかどうかを定義します。

  • 「はい」(デフォルト) に設定した場合、メッセージは同期点下 (WebSphere MQ 作業単位内) で受信されます。 メッセージ・フローと同じインスタンスの出力ノードによってその後に送信されるメッセージは、出力ノードがこれを明示的にオーバーライドしない限り、同期点の下に置かれます。
  • 「自動」に設定した場合、メッセージは、着信メッセージに持続のマークが付けられている場合に同期点下で受信されます。 そうでない場合、メッセージは同期点下で受信されません。 出力ノードによってその後に送信されるメッセージは、出力ノードがこれを明示的にオーバーライドしない限り、着信持続プロパティーによって判別されたとおりに同期点の下に置かれます。
  • 「いいえ」に設定した場合、メッセージは同期点下で受信されません。 フロー内の出力ノードによってその後に送信されるメッセージは、個々の出力ノードがメッセージを同期点の下に置くように指定しない限り、同期点の下には置かれません。

(MQOutput ノードは、このオプションをオーバーライドするように構成できる唯一の出力ノードです。)

ターミナルおよびプロパティー

MQeInput ノード・ターミナルについては、次の表に説明されています。

ターミナル 説明
Failure エラーが発生した場合にメッセージがルーティングされる出力ターミナル。
Out WebSphere MQ Everyplace キューからメッセージが正常に取り出された場合に、メッセージがルーティングされる出力ターミナル。
Catch 例外がダウンストリームでスローされ、ノードによってキャッチされた場合に、メッセージがルーティングされる出力ターミナル。

以下の表でノードのプロパティーを説明します。M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、プロパティー・ダイアログにアスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 かどうかを示します (メッセージ・フローを bar ファイルに追加してデプロイするとき、値を変更できます)。

MQeInput ノードの「デフォルト」プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
メッセージ・ドメイン いいえ いいえ   着信メッセージの構文解析に使用されるドメイン。
メッセージ・セット いいえ いいえ   着信メッセージが定義されているメッセージ・セットの名前または ID。
メッセージ・タイプ いいえ いいえ   着信メッセージの名前。
メッセージ形式 いいえ いいえ   着信メッセージの物理フォーマットの名前。
トピック いいえ はい   入力メッセージ用のデフォルト・トピック。

MQeInput ノードの「一般」プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
キュー名 はい はい   このノードが、このメッセージ・フローで処理するためにメッセージを取り出す WebSphere MQ Everyplace ブリッジ・キューの名前。
トレース はい いいえ なし このノード用に必要なトレースのレベル。有効な値は、「なし」「標準」「デバッグ」、および「フル」です。
トレース・ファイル名 はい はい ¥MQeTraceFile.trc トレース・レコードが書き込まれるファイルの名前。
トランザクション・モード はい いいえ はい 着信メッセージが同期点下で受信されるかどうか。 有効な値は、「自動」「はい」、および「いいえ」です。
構成ファイル使用 はい いいえ 選択されていない このノードの構成ファイルを使用します。 チェック・ボックスを選択すると、このアクションが実行されます。
構成ファイル名 はい はい ¥MQeconfig.ini 構成ファイル使用」チェック・ボックスが選択されている場合に、使用される構成ファイルの名前。
キュー・マネージャー名 はい はい ServerQM1 WebSphere MQ Everyplace キュー・マネージャーの名前。

MQeInput ノードの「チャネル」プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
最大チャネル はい いいえ 0 WebSphere MQ Everyplace キュー・マネージャーによってサポートされるチャネルの最大数。

MQeInput ノードの「レジストリー」プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
タイプ はい はい ファイル・レジストリー 使用されるレジストリー情報のタイプ。 有効な値は「ファイル・レジストリー」および「専用レジストリー」です。
ディレクトリー はい はい ¥ServerQM1¥registry レジストリー・ファイルが存在するディレクトリー (「ファイル・レジストリー」が選択された場合のみ有効)。
PIN はい はい   WebSphere MQ Everyplace キュー・マネージャーに関連する PIN (「専用レジストリー」が選択された場合のみ有効)。
認証要求 PIN はい はい   認証要求に使用される PIN (「専用レジストリー」が選択された場合のみ有効)。
鍵リング・パスワード はい はい   暗号鍵を参照するために使用するパスワード (「専用レジストリー」が選択された場合のみ有効)。
証明ホスト はい はい   証明サーバーの名前 (「専用レジストリー」が選択された場合のみ有効)。
証明ポート はい はい   証明サーバーのポート (「専用レジストリー」が選択された場合のみ有効)。

MQeInput ノードの「リスナー」プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
リスナー・タイプ はい はい Http リスナー用のアダプター・タイプ。有効な値は、「Http」「長さ」、および「ヒストリー」です。
ホスト名 はい はい 127.0.0.1 サーバーのホスト名。
ポート はい はい 8081 WebSphere MQ Everyplace が listen するポート。
時間インターバル はい はい 300 WebSphere MQ Everyplace ポーリング間隔 (秒で指定)。

MQeInput ノードの「説明」プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
簡略説明 いいえ いいえ   ノードの簡単な説明
詳細説明 いいえ いいえ   メッセージ・フロー内のノードの目的を説明するテキスト
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ac04600_