第6回:Webアプリケーションの開発(2)〜サーブレットの作成〜 (2/4)

How to Eclipse!
Eclipse3ではじめるJava Webアプリケーション開発

第6回:Webアプリケーションの開発(2)
〜サーブレットの作成〜
著者:宮本 信二   2005/2/23
前のページ  1  2   3  4  次のページ
サーブレットのデバッグ
ソースデバッグ

   サーブレットのデバッグも、通常のJavaアプリケーションと同様の操作で行うことができます。Tomcatプラグインを使った場合、Tomcatはデフォルトでデバッグ実行されますので、ソース中にブレークポイントを設定してブラウザでアクセスすれば問題ありません。例えば、HogeServlet.javaのメソッド内にブレークポイントを設定し、もう一度ブラウザでアクセスすると、図4のようにブレークポイントで停止します。

ブレークポイントで停止したところ
図4:ブレークポイントで停止したところ
(画像をクリックすると別ウィンドウに拡大図を表示します)


   デバッグ画面を終わるときは、「再開」ボタンでブレークを再開しておきましょう。サーブレットはマルチスレッドで動作するため、イチイチ再開しないと、ブレークしているスレッドがどんどん溜まっていきます。


ホットコードリプレース

   デバッグ実行中では、Javaクラスを変更しても即座に変更が反映され、サーバの再起動などは必要ありません。HogeSevletのdoGet()内の実装を変更して、ブラウザでアクセスすると、すでに変更が反映されている結果が表示されます。ただし、フィールドやメソッドのシグネチャを変更した場合は再起動を行う必要があります。また、この機能を利用する場合は、JDK1.4以上を利用している必要があります。


オートリロード

   Tomcatでは、Webアプリケーションのファイルの変更を10数秒おきにチェックし、変更があれば、Webアプリケーションを再ロードする機能があります。この機能は「オートリロード」と呼ばれています。オートリロードは便利な機能なのですが、デバッグ中にリロードされると動作が不安定になる場合があり、また明示的なリロードの方が素早く行えますので、この機能をソースデバッグと併用するのはお勧めできません。

   TomcatプラグインでTomcatプロジェクトを作成した場合は、オートリロードはデフォルトでオンになっています。これをオフにするには、プロジェクトのプロパティー画面で設定を行います。プロジェクトのプロパティー→Tomcatで、「コンテキストの再読み込みを可能にする」のチェックをはずすとオートリロードがオフになります。


オートリロードの設定
図5:オートリロードの設定
(画像をクリックすると別ウィンドウに拡大図を表示します)



手動リロード

   ユーザの操作による明示的なリロードを行うことができます。明示的なリロードを行うには少しだけ設定が必要です。Eclipseの設定画面で、Tomcat→Tomcat Manager Appを選択します。username、passwordにhoge、hoge(任意)と入力し、「Add user to tomcat-users.xml」を一度クリックします。

ManagerAppの設定
図6:ManagerAppの設定
(画像をクリックすると別ウィンドウに拡大図を表示します)


   設定は以上で終わりですので、パッケージ・エクスプローラでリロードしたいプロジェクト(Webアプリケーション)を右クリックし、Tomcatプロジェクト→reload this contextを選択すると、明示的にリロードを実行することができます。

リロードの実行
図7:リロードの実行


   なお、上記で行った設定は、実際はTomcatのconf/tomcat-users.xml(表1)を編集してManagerアプリケーションのユーザ定義を追加する設定です。Tomcatに詳しければ、手動でファイルを編集しても同じことができます。

jakarta-tomcat-5.x.x/
bin/
conf/
tomcat-users.xml(Tomcatのユーザー定義ファイル)

表1:TomcatのManagerアプリケーションのユーザ定義を記述しているファイルの位置


   リロードの実行はManagerアプリケーションの機能を利用しているだけですので、Tomcatプラグインを利用しなくても、Managerアプリケーション(ブラウザから設定を行う場合はhttp://localhost:8080/manager/html)から同様のことができます。繰り返しリロードを行うような場合は、ブラウザから手動リロードを行った方が素早く行えるかもしれません。

前のページ  1  2   3  4  次のページ



著者プロフィール
宮本 信二  http://muimi.com/
テクニカルライター。Ja-Jakartaコミッタ。Java Webアプリケーション開発業務を経て、現在、主にJavaやOSS関連の調査、執筆を行っている。著書に「Eclipse 3 完全攻略」、「JavaデベロッパーのためのApacheAnt入門」(ソフトバンクパブリッシング)、「徹底解説!JSFのすべて」(秀和システム)などがある。


INDEX
第6回:Webアプリケーションの開発(2)〜サーブレットの作成〜
  サーブレットの作成
サーブレットのデバッグ
  Tomcatプラグインのその他の話題
  Tomcatプラグインを利用しない方法
Eclipse3ではじめるJava Webアプリケーション開発
第1回 Eclipse3の概要とインストール
第2回 Eclipse3の基本機能
第3回 Eclipse3の基本操作を憶えよう
第4回 Eclipseの便利な機能
第5回 Webアプリケーションの開発(1)〜JSP作成〜
第6回 Webアプリケーションの開発(2)〜サーブレットの作成〜
第7回 データベースの利用
第8回 フレームワークの利用
第9回 O/Rマッパーの利用
第10回 JUnitの利用
第11回 Antの利用
第12回 CVSの利用(1)
第13回 CVSの利用(2)
Eclipseが提供するBIとレポーティングツール
第1回 インストールからはじめるEclipse BIRT
第2回 データベースのデータをレポートに出力しよう
第3回 レポートを作成しよう
第4回 スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力
Eclipse実践プラグイン開発
第1回 Eclipseとプラグイン
第2回 プラグインの配布とインストール
第3回 基本的なGUIコンポーネントの利用
第4回 JFaceのGUIコンポーネント
第5回 メニューとポップアップ・メニューの拡張
第6回 ビューの拡張
第7回 エディタの拡張
第8回 パースペクティブの拡張
第9回 プロパティと設定の拡張
Eclipse WTPによる標準開発ツールの提供
第1回 Eclipse WTPの概要とインストール
第2回 Eclipse WTPでHello World
第3回 Eclipse WTPのDB系ツールを使う
第4回 Eclipse WTPのエディタとその他のツール

人気記事トップ10

人気記事ランキングをもっと見る