HOME  >  WEB開発基礎(Servlet/JSP) > Eclipseによるデバッグ(サーブレット)

Eclipseによるデバッグ(サーブレット)

目次

【使用方法】
・ここをクリックすると、以下の全Stepを開いたり閉じたりします。
  [Click here to Open/Close for all steps]
・以下のStepタイトルをクリックすると、そのStepを開いたり閉じたりします。

1. 概要

当講座では「数字当てゲーム(WEBセッション版)」を利用して、サーブレットのデバッグ方法について解説しています。
ブレークポイントを設定することで、ブラウザ画面では正常な情報が表示されずに処理が停止します。そこでEclipse上でデバッグを開始します。

  1. ・Eclipseの準備をします
  2. ・デバッグツールを使用してデバッグの方法を確認します
  3. ・デバッグ後の動作確認を行います

以上が全体の流れとなります。

ページの先頭へ

2. Eclipseの準備

数字当てゲーム(WEBセッション版)のダウンロード

  

ここでの準備は、アプリケーションファイルをWEBからダウンロードします。

ダウンロードはこちらへ→ stepbystep-approach.com/download/java/debug/debugweb.zip

※アプリケーションファイルをダウンロードする場所はデスクトップなど任意の場所で構いません。
これからこのファイルをコピーして使用するので場所がわからなくならないようにしておいて下さい。
本ページではデスクトップにダウンロードしたものとして進めています。


ファイル名:debugweb.zip

数字当てゲーム(WEBセッション版)のインポート

ダウンロードした『debugweb.zip』ファイルをEclipseにインポートします。

※圧縮ファイルのインポート方法に関しましては以下ページを参照して下さい。
se-java-school.com/itstudy/java/eclipse_tips/howto_import.php

数字当てゲーム(WEBセッション版)の動作確認

ここではインポートをした『数字当てゲーム(WEBセッション版)』の動作確認を行います。
①インポートしたファイル構成を確認し、WEBサーバ(Tomcat)を起動します。

①まずTomcatを起動し、ブラウザで「http://localhost:8080/debugweb/view/guess.jsp」にアクセスします。
『数字当てゲーム(セッション版)』の画面が表示されれば問題ありません。
※ここでは任意でChromeブラウザを使用していますが、どのブラウザでもかまいません。

※もし『数字当てゲーム(セッション版)』の画面が表示されず、エラーページが表示されてしまった場合は、次の2点を確認し、Tomcatを再起動してからもう一度「http://localhost:8080/debugweb/view/guess.jsp」にアクセスして下さい。

・URLが合っているか確認
・Eclipseのパッケージ・エクスプローラーに表示されている[debugweb]プロジェクトを右クリック→→[Tomcatプロジェクト]→[コンテキスト定義を更新]を左クリック

②入力欄に数字を入力し、[送信]ボタンをクリックします。

③判定結果と履歴が表示されます。

④繰り返し入力を行い、当たりが表示されるまで行います。

⑤[もう一度挑戦]をクリックして最初の画面に戻ることを確認できたら動作確認は完了です。

ページの先頭へ

3. デバッグツールを使用する

ブレークポイントの設定

ここではEclipseで『GuessServlet.java』ファイルにブレークポイントを設定します。

※デバッグツールの使用方法に関しては以下のURLページを参照して下さい。
http://se-java-school.com/itstudy/java/eclipse_tips/eclipse_debug.php

①まずEclipseで『GuessServlet.java』ファイルを開きます。
[debugweb]→[WEB-INF/src]→[jp.co.f1.debugweb.guess]→[GuessServlet.java]

②ブレークポイントを設定します。
今回は89行目に設定をして進めていきます。

デバッグ画面の表示

ここでは、ブラウザ画面で操作をすることで本来表示されるはずのページが表示されずに処理が停止します。
するとPC画面下部のタスクトレイにあるEclipseロゴが点滅するのでクリックしてEclipse上でデバッグ画面を表示させます。

①まずブラウザ画面で『数字当てゲーム(セッション版)』を表示します。

②数字を入力し、送信ボタンをクリックします。(今回は任意で1を入力して進めていきます)
するとPC画面下部のタスクトレイにあるEclipseロゴが点滅します。

③点滅しているEclipseをクリックして開くと、以下のように[パースペクティブ切り替えの確認]ダイアログが表示されます。
このまま [はい] を選択します。

④デバッグ画面が表示されました。

※画像右上のビューに変数のタブがない場合は表示させておきます。
変数タブの表示方法はメニューバーの[ウィンドウ]→[ビューの表示]→[変数] を選択することで表示できます。

変数に格納されているデータの確認

①変数に格納されているデータの確認をします。
現在、89行目のブレークポイントで処理が一時停止している状態です。この時点で変数に格納されているデータが画面右上の変数ビューに表示されています。
変数ビューでは『名前』と『値』を見ることができます。以下のデバッグ画面ではcmdという名前の変数に"game"という値が格納されているのがわかります。

②cmdの左にある+(プラスマーク)をクリックすることで、cmdの内容を展開して詳しく見ることができます。

ブレークポイントの解除

ここでは『ブレークポイントの設定』の項で設定したブレークポイントを解除します。

①まずデバッグ画面左下のエディタで、89行目に設定されているブレークポイントをダブルクリックして解除します。

②現在89行目で処理が停止したままなので、デバッグビューの再開アイコンをクリックして最後まで処理を完了させます。

③ブラウザ画面を開くと判定結果が表示されています。
今回、数字1ははずれという結果です。

【注意】
※長い時間デバッグ画面を開いたままでプログラムの処理を停止したままにしていると、結果が表示されずにエラーページが表示されることがあります。
[もう一度挑戦]ボタンをクリックすることで最初の画面に戻ることができます。

ページの先頭へ

4. デバッグ後の動作確認

数字当てゲーム(WEBセッション版)の動作確認

ここでは最初に行なった『数字当てゲーム(WEBセッション版)の動作確認』と同様に動作確認を行います。

本ページ[2.Eclipseの準備]→[数字当てゲーム(WEBセッション版)の動作確認]を参照して動作確認を行ってください。

※正常に動作しなかった場合、以下の点を再度確認して下さい。
・URLが「http://localhost:8080/debugweb/view/guess.jsp」になっているか
・ブレイクポイントが解除されているか
・Tomcatが起動しているか

正常に動作すれば完了です。
以上でEclipseによるデバッグ(サーブレットの場合)の講座は終了です。
お疲れ様でした。


ページの先頭へ