ColdFusion デバッグパースペクティブ

ColdFusion デバッグパースペクティブ(起動するには、実行/デバッグの構成/パースペクティブを選択)には、ColdFusion アプリケーションおよびクライアントサイドのアプリケーションをデバッグするためのツールが含まれています。コードへのブレークポイントの追加、関数へのステップインやステップオーバーまたはコード内の式の確認や評価を行うことのできる様々なビューがあります。エディターとデバッグツールを組み合わせて使用すると、修正が必要なコード行を検索して強調表示することができます。

A. 変数ビュー B. デバッグ出力バッファービュー C. ブレークポイントビュー D. 式ビュー E. 概要ビュー F. デバッグビュー G. 編集ビュー H. サーバービュー I. コンソールビュー J. 問題ビュー K. TailView ビュー

ColdFusion デバッグパースペクティブには次のビューがあります。

デバッグビュー

デバッグビューには、各デバッグセッションの結果が表示されます。デバッグビューには、ブレークポイントでページの実行が中断したとき、またはコードにステップインまたはステップオーバーしたときのスタックトレースが表示されます。

デバッグツールバーには、(左から右の順に)次のボタンがあります。

ボタン / コマンド 説明
再開 デバッグセッションを再開します。
中断 デバッグセッションを一時停止します。
終了 デバッグセッションを停止します。
切断 リモートでデバッグしている場合に、選択したデバッグターゲットからデバッガーを切断します。
終了したすべての起動を削除 終了したすべてのデバッグターゲットをビューから消去します。
ステップイン インクルードされたコード、UDF、CFC を含めて、コードを行単位で実行します。
ステップオーバー インクルードされたコード、UDF、CFC を除いて、コードを行単位で実行します。
ステップリターン インクルードされたコード、UDF、CFC の呼び出し元ページに戻ります。
フレームにドロップ このコマンドは、ColdFusion Builder ではサポートされていません。
ステップ・フィルター/ステップ・デバッグの使用 すべてのステップ関数でステップフィルターを適用します。

すべてのステップ関数でステップフィルターを適用します。

すべてのステップ関数でステップフィルターを適用します。

すべてのステップ関数でステップフィルターを適用します。

アプリケーションのデバッグ

デバッグでは、アプリケーションを調べてトラブルシューティングできます。デバッグ中には、コード内の特定のポイントでアプリケーションを停止するかどうかを制御できます。また、重要な変数を監視したり、コードをテストすることもできます。デバッグでは、アプリケーションの起動方法を制御するための設定が使用されます。アプリケーションをデバッグするときは、デバッグ版のアプリケーションファイルを実行します。

ColdFusion Builder バージョン 2.0 では ColdFusion のサーバーサイドのデバッグがサポートされていましたが(ColdFusion Markup Language のシンタックスに限定)、ColdFusion Builder 3 では、ColdFusion 11 での <cfclient> タグの導入に伴って、クライアントサイド JavaScript コードをデバッグするためのクライアントサイドのデバッグが可能になりました。

ColdFusion デバッガーを使用したサーバーサイドのデバッグ

ColdFusion デバッガーを使用する前に、次の作業をおこなってください。

デバッガーを使用するための ColdFusion の設定

デバッガーを使用する前に、次のことを確認します。

  • デバッグ対象のプロジェクト、またはデバッグ対象のファイルを含むプロジェクトにサーバーが関連付けられているかどうかを確認します。
  1. ナビゲータービューでプロジェクトを右クリックし、「プロパティ」を選択します。

  2. プロパティダイアログボックスで「ColdFusion サーバーの設定」を選択します。

  3. 「サーバーの選択」で、サーバーが選択されていることを確認します。サーバーが選択されていない場合は、サーバードロップダウンリストからサーバーを選択するか、「サーバーの追加」を選択して新しいサーバーを設定します。

  4. ColdFusion Administrator で、デバッグとロギング/デバッガーの設定を選択します。

  5. 「ラインデバッグの許可」を選択します。

  6. デバッグに使用するポートを指定します。デフォルト値は 5005 です。

  7. 同時デバッグセッションの最大数を指定します。デフォルト値は 5 です。

  8. 「変更の送信」をクリックします。

  9. リクエストのタイムアウト時間を長くするには、次のようにします。

    a. サーバーの設定/設定を選択します。
    b. 「リクエストタイムアウト」(秒)を選択して、必要なタイムアウト値を入力します。例えば、300 のように入力します。
    c. 「変更の送信」をクリックします。
  10. デバッガーサーバーは、手順 3 で指定したものとは別個のポートで、ColdFusion Builder からのコマンドをリスンします。ColdFusion では、デフォルトで、使用可能なポートをランダムに使用してデバッガーサーバーを起動します。そのため、ColdFusion(つまりデバッガーサーバー)がファイアウォールの後ろにある場合は、問題が発生する可能性があります。 それは、デバッガーがリスンしているランダムなポートをファイアウォールがブロックするからです。

  • ColdFusion サーバーで RDS を有効にし、ColdFusion Builder で RDS の設定情報が正しく指定されていることを確認します。
  • ColdFusion Administrator でデバッグが有効になっていることを確認します。

この問題を回避するには、デバッガーサーバーが使用するポート番号を固定的に指定し、このポートの使用をファイアウォールで許可します。デバッガーサーバーのポート番号を固定的に設定するには、ColdFusion Administrator の Java と JVM ページ(または J2EE アプリケーションサーバーの適切なセクション)で、次の JVM 引数を指定します。portNumber の部分は、実際に使用するポート番号に置き換えてください。
-DDEBUGGER_SERVER_PORT=portNumber

  1. ColdFusion を再起動します。J2EE 設定の ColdFusion を実行している場合は、指定のデバッグポートを使用してデバッグモードでサーバーを再起動します。

J2EE 設定の ColdFusion におけるデバッグのセットアップ

サーバー設定の ColdFusion を実行していない場合は、実行するアプリケーションサーバーの設定ファイルまたはスタートアップスクリプトで Java デバッグパラメーターを指定します。パラメーターは次のようになります。

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=<port_number>

ColdFusion Administrator のデバッガーの設定ページで指定したのと同じポート番号を指定する必要があります。

サーバー設定の ColdFusion を実行している場合は、ColdFusion Administrator のデバッガーの設定ページを使用すると、ColdFusion によってこれらのデバッグパラメーターが jvm.config ファイルに書き込まれます。

  1. サーバー設定の ColdFusion を実行しておらず、アプリケーションサーバーが JRE 1.6 で実行されていない場合は、アプリケーションサーバーで実行している JDK バージョンの tools.jar ファイルを、ColdFusion の ¥lib フォルダーにコピーします。例えば、JRE 1.4 で JRun を実行している場合は、JDK 1.4 の tools.jar ファイルを ColdFusion の ¥lib フォルダーにコピーする必要があります。

  2. サーバーバージョンの ColdFusion を実行しており、JRE 1.6 以外のバージョンの JRE を jvm.config ファイルで指定する場合は、jvm.config ファイルで指定されている JDK バージョンの tools.jar ファイルを ColdFusion の ¥lib フォルダーにコピーします。

ColdFusion Builder でのデバッガー設定の指定

  1. ColdFusion Builder でウィンドウ/環境設定を選択します。

  2. ツリービューで、ColdFusion/デバッグの設定を選択します。

  3. 「ホーム」ボタンをクリックしたときにデバッガーの「デバッグ出力バッファー」に表示するホームページの URL を指定します。

  4. デバッグ可能なファイルタイプの拡張子と、デバッガーに認識させるデバッガースコープを指定します。サイズの大きなファイルをデバッグする際のパフォーマンスを向上させるために、情報が不要なスコープの選択はすべて解除してください。

  5. ColdFusion エラーが発生した行でデバッガーを停止する場合は、「CFML ランタイム例外発生時にブレーク」を選択します。

  6. 警告ダイアログボックスを表示せずに TailView ビューでサーバーログを確認する場合は、「警告ダイアログボックスを表示せず Eclipse エラーログに例外を記録」を選択します。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー