1.0 概要
2.0 既知の問題
2.1 Web 開発環境
2.2 WebSphere Application Server のデバッグ
2.3 JavaScript デバッガー
2.4 テストおよびデプロイメント・ツール (サーバー・ツール)
2.5 Java 開発ツール (JDT) デバッガー
2.6 コンパイル済み言語デバッガー
2.7 各国語の制限
2.8 SQLJ デバッガー
2.9 Active Script デバッグ
JSP デバッグ:
- JSP ファイルは WebSphere Application Server でのテスト中にデバッグすることが可能です。 Tomcat サーバーでのテスト中は、デバッガーは JSP ブレークポイントで停止しません。
- ブレークポイントは、JSP ファイルの以下のタグの中に設定できます。
- フォームの JSP スクリプトレット: <% %>
- フォームの JSP 式: <%= %>
- フォームの JSP 宣言: <%! %>
- jsp:useBean、jsp:getProperty、および jsp:setProperty タグ
- カスタム・タグ
- 以下のタグ・セットにブレークポイントは設定できません:
- HTML コード
- JSP ディレクティブ
- その他のすべての標準 JSP タグ (jsp:include、jsp:forward、など)
- ワークスペースを古いバージョンの WebSphere Studio からこのバージョンにマイグレーションする場合は、JSP ブレークポイントを削除して、それらを再作成する必要があります。
- EJB ホーム・メソッドでは段階的デバッグ・モードは失敗する: WebSphere Application Server デバッグ・アダプターを使用してデバッグ・セッションを起動すると、段階的デバッグ・モードは EJB ホーム・メソッドで停止しません。これらのメソッドをデバッグする場合は、ブレークポイントを使用してください。
- Java から JavaScript へのステップ・リターンはサポートされない: Java から JavaScript コードに戻る必要があるときはブレークポイントを使用してください。
- JSP のデバッグ
- 実行可能コードを含まない JSP については段階的なデバッグは機能しません。
- WebSphere Application Server デバッグ・アダプターを使用してデバッグ・セッションを起動すると、JSP 変数と JSP 式のインスペクションまたは表示を行うことはできません。
- JSP では、「この行まで実行 (Run to line)」はサポートされていません。
- JSP ブレークポイントの設定は時間がかかります。 多くの JSP ブレークポイントがあるときには、デバッガーの初期化に余分の時間がかかることを考慮してください。
- JSP 宣言ブロックの静的変数上のブレークポイントは機能せず、他のブレークポイント問題を引き起こすことがあります。
- hit count、condition、selected thread、および VM suspend policy などのブレークポイント・プロパティーは JSP ではサポートされていません。
- デバッガー・エディターには Java ブレークポイントを設定しない: Java ブレークポイントは、デバッガー・エディターではなく、Java エディターに設定しなければなりません。
- 「ソース・ファイルの変更デバッグ (Change Source File Debug)」ビューのポップアップ・メニュー項目の使用: スタック・フレーム上の「ソース・ファイルの変更 (Change Source File)」ポップアップ・メニュー項目を使用して表示されたソース・ファイルを変更すると、 エディターで新しいファイルをオープンすることができない場合があります。 これを回避するには、別のスタック・フレームをクリックし、そのあと元のスタック・フレームをもう一度クリックしてください。これでエディターに新しいファイルがオープンされるはずです。
- デバッグ・コンソール: デバッグ・コンソールでは、タイプをオープンするためのハイパーリンクが機能しません。
- ホット・スワップ後のスタック・フレーム・ラベル: ホット・コード置き換えのあと、一部のスタック・フレームに、
<unknown receiving type>(<unknown declaring type>).<unknown method name>(<unknown arguments>) line: not available <unknown line number>などのラベルが示されている場合は、別のパースペクティブに切り替え、次にまたデバッグ・パースペクティブに切り替えることにより、正しいラベルを入手することができます。
- JavaScript オブジェクトは、そのコンストラクターが完了するまで、検査の目的で使用できない: ユーザーはコンストラクターの実行を段階的に実行することはできますが、構成が完了 (コンストラクターを終了) するまでは、構成されているオブジェクトを検査できません。
- トップ・スタック・フレーム以下のステップ・フレームとスタック・フレーム: JavaScript では、トップ・スタック以外のスタック・フレームのステップオーバーおよびステップ・リターンはサポートされていません。
- JSP の include: JSP の include では JavaScript のデバッグはサポートされていません。
- 再帰的関数から外に出る: 再帰的 JavaScript 関数をデバッグ中、再帰的関数から外に出ると、実行レベルのトップに戻ります。
- writer または inputStream の変数が組み込まれているオブジェクトは拡張しないでください: ユーザーは、JavaScript オブジェクトを調べるときに、writer または inputStream の変数が組み込まれているオブジェクトを拡張しないように注意してください。 これは、デバッガーが応答しない原因になります。
- テスト環境: WebSphere V5 テスト環境を使用しているときは、JavaScript デバッグが機能しない。 この問題は、APAR #PQ73036 で修正済みです。
サーバーをデバッグ・モードで実行する場合は、以下の点を考慮してください。
- サーバーの開始と実行は、非デバッグ・モードでの実行より遅い場合がある。
- WebSphere Application Server は JSP ページのコンパイルにかなり長い時間を要する。
Java 開発ツールでの既知の問題と制限に関する情報は、Java 開発ツール (JDT) のリリース情報およびワークベンチ (IDE) のリリース情報に記載されています。 これらのリリース情報は、この製品と一緒にインストールされた主要製品 README にリンクされています。
- 「Unable to find DLL」エラー: コンパイルされたデバッグ・セッションを開始した際に Windows メッセージ「Unable to find DLL」が出された場合は、LOCPATH 環境変数を除去してください。
- 既存のストリングがプログラムのソースまたはリスト・ビューで見つからない: 大きなソースまたはリスト・ファイルを処理する場合、デバッガー・エディターの find 機能がストリングを検出できないことがあります。 これは、ソースまたはリストの一部分しかエディターにロードされていないときに起こることがあります。
- 記憶ビューが間違った文字を表示する: 記憶ビューを「16 進および文字」でフォーマット設定すると、16 進データは正しいのに、単一バイト・エンコードの文字しか正しく表示されません。
- スクロールすると、予期した行数より多くジャンプする: デバッガー・エディターで前方または後方にスクロールすると、予期した行数より多くジャンプすることがあります。 特定の行に進むには、行アクション (Ctrl-L) を使用します。
- 双方向 (BiDi) 制限: ネイティブ・コード・ページ以外のコード・ページでエンコードされた JSP をデバッグ中にデバッガー・エディターを使用することはできません。
- コンパイル済み言語デバッガー:
- 1 バイト (SBCS) システムでは、コンパイル済み言語デバッガーは 0x7F より上の文字を含むプログラム名または引き渡し中のプログラム・パラメーターをサポートしません。
- デバッグ対象名とデバッグ対象引き数での NL 文字の使用はサポートされていません。
J9 JVM でデバッグしながらホット・スワップを実行しているときに、SQLJ メソッドが呼び出しスタックに含まれていると、「スタック上の廃止メソッド (Obsolete methods on the stack)」ダイアログが表示されます。 ホット・スワップが SQLJ クラスであれば、そのクラスは JVM に再ロードされますが、次回にそのクラスのメソッドが呼び出されるまで、実行対象の新規コードは表示されません。
SQLJ クラスをホット・スワップすると、現行デバッグ・セッションで SQLJ ブレークポイントがこのクラスに対して機能しないことがあります。
HTML Script Application
HTML Script Application のデバッグ・セッションを起動しようとすると、以下の問題が発生することがあります。
- 永続的「デバッグ・ターゲットの作成中のエラー (Error creating debug target)」メッセージ。
- デバッグを行うために既存のブラウザーに接続しようとしても、デバッガーは実行中のブラウザーを取得できません。
これらの問題を訂正するには、次のようにします。
- 他のデバッグ・セッションを開始する前に、実行中のブラウザーと Microsoft(R) Windows Explorer のウィンドウをすべてクローズします。
- 上記のステップで問題が解決できない場合は、mdm.exe process が壊れています。 実行中のブラウザーとファイル・エクスプローラーをすべてクローズし、Windows(R) Task Manager から mdm.exe を終了します。デバッグ・セッションを再始動します。
デバッグを行うために既存のブラウザーに接続する場合、WebSphere Studio ワークベンチ内部ブラウザーに接続しないでください。 デバッグを行うために内部ブラウザーに接続すると、ワークベンチが応答しなくなり、予期しない結果になります。
HTML Script Application のデバッグ・セッションでは、以下の問題が発声することがあります。
- デバッグ・セッションが中断されているときは、エディターで現在場所が強調表示されない。
- ブレークポイントをインストールできない。
- ソースがワークベンチ・ワークスペースの外部にあると、ソースを表示できない。
これらの問題を訂正するには、次のようにします。
- ブラウザーがページを正しくロードしていないことが考えられます。 Microsoft(R) Internet Explorer のページを最新表示します (この操作は、複数回実行する必要があります)。
- ページを最新表示しても問題を訂正できない場合は、デバッグ・セッションを終了してください。 実行中のブラウザーとファイル・エクスプローラーをすべてクローズしてから、デバッグ・セッションを再始動します。
- 上記のステップで問題が解決できない場合は、mdm.exe process が壊れています。 デバッグ・セッション、実行中のブラウザー、およびファイル・エクスプローラーをすべて終了します。 次に、Windows(R) Task Manager から mdm.exe を終了し、デバッグ・セッションを再始動します。
Active Script デバッグ中にワークベンチ・ヘルプ・ウィンドウまたは内部ブラウザーをオープン状態のままにしておくと、デバッグ・セッションが妨げられ、予期しない振る舞いになることがあります。
ページをサーバーにデプロイする場合、デバッグ・セッションの前に設定したブレークポイントは無視されます。 ブレークポイントを設定するには、デバッグ・セッションを中断してソースを起動し、その一時ページにブレークポイントを設定します。 詳しくは、『行ブレークポイントの設定 (Setting Line Breakpoint)』を参照してください。
アクティブ・スクリプト・デバッガーは Microsoft(R) Script Debugger を使用してデバッグ情報を入手します。Microsoft(R) Script Debugger に関連するその他の問題については、その ReadMe.htm を参照してください。
Script Host Application
Script Host Application のデバッグ・セッションを起動しようとすると、次の問題が発生することがあります。
- 永続的「デバッグ・ターゲットの作成中のエラー (Error creating debug target)」メッセージ。
この問題を訂正するには、次のようにします。
- 他のデバッグ・セッションを開始する前に、実行中のブラウザーと Microsoft(R) Windows Explorer のウィンドウをすべてクローズします。
- 上記のステップで問題が解決できない場合は、mdm.exe process が壊れています。 実行中のブラウザーとファイル・エクスプローラーをすべてクローズし、Windows(R) Task Manager から mdm.exe を終了します。デバッグ・セッションを再始動します。
(C) Copyright IBM Corporation 2000, 2003. All Rights Reserved.