Web サービスをデバッグする
WebLogic Workshop の統合デバッガを使用すると、Web サービスをデバッグできます。このデバッガでは、ブレークポイントの設定、コードの行単位の実行、ローカル変数の表示、変数の監視の設定、およびコール スタックと例外情報の表示などができます。
Web サービスのテスト時にデバッガを使用するには、ツールバーの [開始してデバッグ] ボタンをクリックするか、〔F5〕を押します。デバッグを停止するには、ツールバーの [停止] ボタンをクリックします。
デバッガの動作中は、デバッガ プロキシのコマンド ウィンドウ([WebLogic Workshop Debugger])が表示されます。デバッガを使用するためには、このウィンドウが開いていなければなりません。このウィンドウを閉じると、サービスのテスト時にブレークポイントがヒットしなくなります。
Web サービスがデバッガで実行されている間は、クライアントからそのサービスにアクセスすることはできません。
コードにブレークポイントを設定すると、その行の直前で実行が停止されます。実行が停止されたら、変数値またはコール スタックの調査や他のブレークポイントの設定が行えます。
ブレークポイントを設定または削除するには、ソース ビューで目的の行にカーソルを置きます。ツールバーの [ブレークポイントの切り替え] ボタンをクリックします。〔F9〕を押すか、ソース ビューの左端にある行番号の左側の「溝」をクリックするか、ソース コードの行を右クリックして表示されるコンテキスト メニューの [ブレークポイントを切り替え] を選択してもブレークポイントを切り替えることができます。
プロジェクトのすべてのブレークポイントを一度にクリアするには、ツールバーの [すべてのブレークポイントをクリア] ボタンをクリックするか、〔Ctrl〕+〔Shift〕+〔F9〕を押します。
次の図は、ソース ビューのブレークポイントで実行が停止された状態を示しています。
変数宣言などの実行されない行でブレークポイントを設定すると、そのブレークポイントが無効であるという警告が出力ウィンドウに表示されます。
ブレークポイントをファイルに追加した場合、ビジュアル開発環境でファイルを閉じたときにブレークポイントが失われます。
ブレークポイントで実行を停止した後は、以下のいずれかのコマンドを使用してデバッガでのコード実行を継続できます。これらのコマンドはすべて、ツールバーおよび [デバッグ] メニューから利用できます。
[ステップ イン]: [ステップ イン] コマンドは、行単位の実行を次行から継続します。このコマンドは、1 行ずつコードをデバッグする場合に使用します。
[ステップ オーバー]: [ステップ オーバー] コマンドは、メソッドをデバッグすることなくメソッド呼び出しを実行し、次の行で実行を停止します。このコマンドは、メソッドのコードが正常に機能することがわかっており、ステップ インする必要がない場合に使用します。
[ステップ アウト]: [ステップ アウト] コマンドは、メソッドの実行を終了し、そのメソッドを呼び出したプロシージャに実行を戻します。実行は、メソッド呼び出し直後の行で終了します。このコマンドは、メソッドにステップ インしても、それ以後すべてを継続する必要がない場合に使用します。
[続行]: [続行] コマンドは、別のブレークポイントに達するか、プロシージャが完了するまで実行を継続します。
複数の文が含まれる行にステップ インした場合、次の行に移行するときにその行のすべての文が実行されます。
デバッグ ウィンドウは、デバッガでの実行時にコードの値についての情報を提供します。
[ローカル] ウィンドウでは、デバッガでコードを実行しているときにスコープ内の変数が自動的に表示されます。デバッグの実行中にプリミティブ型変数の値をここで変更できます。
[ローカル] ウィンドウでオブジェクトのエントリを展開すると、そのメンバーを表示できます。次の図は、StringBuffer オブジェクトの値を構成する個々の配列要素を示しています。
[監視] ウィンドウを使用すると、特定の変数の値がデバッグ時にどのように変化するのかを観察できます。監視を設定するには、[監視] ウィンドウで変数の名前を入力します。次の図は、[監視] ウィンドウの変数を示しています。
コール スタックは、デバッガで実行が停止されたポイントにアクセスできるように呼び出されたメソッドを示します。メソッドは、新しく呼び出された順にリストされます。各呼び出しは、コール スタックですぐ下にあるメソッドにネストされているものと考えることもできます。
コール スタックでメソッドをダブルクリックすると、ソース ビューでそのメソッドを表示できます。
次の図は、コール スタックの 2 つのメソッドを示しています。
リモート サーバを想定して開発を行っている場合は、そのリモート サーバを考慮してデバッグを行うこともできます。[プリファレンス] ダイアログの [パス] タブで、[名前] オプションをリモート サーバの名前に設定し、[ポート] オプションをその指定ポートに設定します。[コンフィグレーション ディレクトリ] オプションをサーバ ドメインのあるディレクトリに設定し、[ドメイン] オプションをそのドメインの名前に設定します。
注意: リモート サーバのマシン名が有効でないとデバッグできません。Linux システムでは、hostname コマンドを使用してマシン名を確認できます。
リモート サーバを指すように WebLogic Workshop のプリファレンスを変更する方法の詳細については、WebLogic Workshop に対応した WebLogic Server ドメインを新しく作成するにはを参照してください。