ユーザー定義ノードのテスト

ユーザー定義ノードが使用可能になる前に、ユーザー定義ノード・プロジェクトを構成するファイルをワークベンチにデプロイする必要があります。テスト環境において、ワークベンチで「プラグイン開発」パースペクティブを使用することによって、これを行うことができます。 「実行」>「実行」>「Runtime Workbench」オプションを使用して、組み込まれた追加ノードが含まれるワークベンチの新しいコピーを開始します。 このパースペクティブの詳細については、PDE ガイド (PDE Guide)を参照してください。

メッセージ・フロー・エディターを開く際に、パレット内の新規ノードを参照する必要があります。 新規ノードをテストするには、そのノードをメッセージ・フローに追加し (ノードの追加を参照)、通常通りデプロイします。ノード定義に満足した場合は、新規ノードをメッセージ・フロー・エディターの通常パレットに追加します(ユーザー定義ノードの配布を参照)。 これを行うまで、新規ノードはテスト・ワークベンチ・セッションでのみ使用可能になります。

自分のユーザー定義ノードを含むメッセージ・フローをセットアップおよびデプロイし、 メッセージ・フローにテスト・メッセージを送信すると、 ノードが作動しているかどうかを判別し、作動していない場合にどこが悪いのかを判別するためにいくつかの診断ツールが使用できます。
  1. イベント・ログをチェックします (これについては、イベント・ログ・エディターを参照してください)。
  2. メッセージにトレース・ノードを追加し、そこからの出力をチェックします (トレース・ノードについては、Trace ノードを参照してください)。
  3. フロー・デバッガーを使用して、ノードを含むフローをデバッグします (これについては、メッセージ・フロー・アプリケーションのテストとデバッグを参照してください)。
以下のデバッグ・メッセージは、ユーザー定義ノードおよびパーサーの実行を理解するのに役立ちます。
  • BIP2233 および BIP2234: ユーザー定義拡張インプリメンテーション関数が呼び出される前後にトレースされたメッセージのペア。 これらのメッセージは、入力パラメーターと戻り値を報告します。

    これらのメッセージでは、「インプリメンテーション関数」は C インプリメンテーション関数または Java インプリメンテーション・メソッドのいずれかとして解釈できます。

  • BIP3904: ユーザー定義ノードの Java evaluate() メソッドを起動する前にトレースされるメッセージ。
  • BIP3905: ユーザー定義ノードの C cniEvaluate() インプリメンテーション関数 (CNI_VFT の iFpEvaluate メンバー) を呼び出す前にトレースされるメッセージ。
  • BIP4142: ユーザー定義のノード・ユーティリティー関数を起動する際にトレースされるデバッグ・メッセージ。ユーティリティー関数は、構文エレメントの状態を変更します。 これには cniSetElement* (* はその語幹を持つすべてのノードを表す) で始まるすべてのユーティリティー関数が含まれます。
  • BIP4144 および BIP4145: 特定のインプリメンテーション関数でトレースされるメッセージのペア。ユーザー定義拡張機能でこれらを呼び出すと、メッセージ・ブローカーのオブジェクトの内部状態に変更を加えることができます。 可能なメッセージ・ブローカー・オブジェクトとして、構文エレメント、ノード、およびパーサーがあります。

    これらのメッセージでは、「インプリメンテーション関数」は C インプリメンテーション関数または Java インプリメンテーション・メソッドのいずれかとして解釈できます。

  • BIP4146: ユーザー定義のパーサー・ユーティリティー関数を起動する際にトレースされるデバッグ・メッセージ。ユーティリティー関数は、構文エレメントの状態を変更します。 これには cpiSetElement* (* はその語幹を持つすべてのノードを表す) で始まるすべてのユーティリティー関数が含まれます。

    C ユーザー定義 API については、C ユーザー定義パーサー APIおよびC ユーザー定義ノード APIを参照してください。

  • BIP4147: ユーザー定義拡張機能が、ユーザー定義拡張機能ユーティリティー API 関数に、無効な入力オブジェクトを渡すときにトレースされるエラー・メッセージ。
  • BIP4148: ユーザー定義拡張機能がブローカーのオブジェクトに損傷を与えたときにトレースされるエラー・メッセージ。
  • BIP4149: ユーザー定義拡張機能が、ユーザー定義拡張機能ユーティリティー API 関数に、無効な入力データ・ポインターを渡すときにトレースされるエラー・メッセージ。
  • BIP4150: ユーザー定義拡張機能が、ユーザー定義拡張機能ユーティリティー API 関数に、無効な入力データを渡すときにトレース・アウトされるエラー・メッセージ。
インプリメンテーション関数の完全なリストは、ユーザー定義拡張機能の問題の解決を参照してください。

これらのトレース・エントリーを参照するためには、ユーザー・トレースのスイッチをデバッグ・レベルでオンにしてください。 詳しくは、トレースの使用を参照してください。

関連概念
ユーザー定義の入力ノード
ユーザー定義のメッセージ処理ノード
ユーザー定義の出力ノード
関連タスク
ユーザー定義拡張機能の開発
ノードの追加
メッセージ・フロー・アプリケーションのテストとデバッグ
ユーザー定義拡張機能の問題の解決
ユーザー定義ノードの配布
関連資料
イベント・ログ・エディター
Trace ノード
ユーザー定義拡張機能
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2005 Last updated: 11/07/2005
as04505_