EclipseでWebプロジェクトを作ってみよう〜TomcatプラグインとTomcatプロジェクト
20年経ってもデファクトスタンダードIDEのEclipse入門 第6回
Tomcatプロジェクトの実行とデバッグ
サーブレットなど、ファイル類の格納先がわかったところで、次に、実際にサーブレットを実行させる方法を紹介します。
Tomcatの起動
アプリケーションを実行させるには、まず、Tomcat本体を起動させておく必要があります。これは、Eclipse Tomcat Pluginを追加した際に、ツールバーに追加された
アイコンのうち、
をクリックします。すると、コンソールに起動に関するログが表示され、最終的に、「情報: Server startup in ### ms」(###はミリセカンド数)というログが表示されていれば、Tomcatは無事起動しています(図10)。
この状態で、ブラウザで次のURLにアクセスすると、図11のような画面が表示され、無事Tomcatが起動していることがわかります。
- http://localhost:8080/
なお、ツールバーの
はTomcatの停止を、
はTomcatの再起動を行うボタンです。
Tomcatのバージョン
図11をみると、ここで起動したのは、Tomcatのバージョン8です。Pleiades All in Oneには、Tomcatのバージョン6、7、8、9が含まれています。デフォルト設定では、バージョン8が起動するようになっています。これを他のバージョンに変更するには、設定画面を開いて、[Tomcat]を選択します。図12のTomcatプラグインの設定画面が表示されるので、[Tomcat]のラジオボタンから任意のバージョンを選択し、そのバージョンに合致したTomcatフォルダを[Tomcatホーム]欄に指定します。
なお、本稿は、Tomcatの使い方、および、Tomcatを利用したWebアプリケーションの作成方法を紹介するものではありません。あくまで、プラグインの解説なので、デフォルト設定のまま解説を続けますが、以降の内容は、最新のTomcatにも通用する方法です。
コンテキスト定義の更新
無事Tomcatの起動が確認できたなら、いよいよアプリケーション(内のサーブレット)を実行させ、「Hello World!」をブラウザに表示させたいところですが、このままではまだ無理です。試しに、このサーブレットを実行する以下のURLにアクセスしても、404の画面が表示されるだけです(図13)。
- http://localhost:8080/cztomcat/hello
先述の通り、Tomcatプロジェクトの特徴は、Tomcatにwarファイルをデプロイすることなしにアプリケーションが実行できることです。ただし、そのためには、プロジェクト内のアプリケーションルートフォルダをTomcatに認識させる必要があります。現段階で404エラーとなったのは、FirstTomcatProjectプロジェクトのcztomcatアプリケーションを、Tomcatがまだ認識していないからです。
Eclipse Tomcat Pluginには、このアプリケーションをTomcatに認識させる機能が含まれています。早速実行してみましょう。パッケージエクスプローラー上でプロジェクトフォルダであるFirstTomcatProjectを右クリックし、表示されたメニューから
[Tomcatプロジェクト] > [コンテキスト定義を更新]
を選択してください(図14)。
すると、図15のようなダイアログが表示されます。このダイアログは[OK]をクリックして閉じてかまいません。
しばらくすると、コンソール上に「情報: 配備記述子 [/…/cztomcat.xml] を配備します」というログが表示されます。この表示でもって、Tomcatがcztomcatアプリケーションを認識したことになります。
この状態で、もう一度、先のURLにアクセスすると、図16の画面が表示され、無事、cztomcatアプリケーションが実行されているのがわかります。
なお、図14のメニュー中の[コンテキスト定義を除去]は、その名の通り、Tomcatからアプリケーションの認識を削除することを意味します。
Tomcatプロジェクト内の変更は即時反映
このTomcatプロジェクトの優れたところは、Eclipse内での変更がすぐに反映されることです。
例えば、HelloServlet.javaファイル内のコードを変更し、保存を行います。コンパイルエラーなどなければ、自動でコンパイルされます。その後、Tomcatがその内容を検知し、コンソールに次のようなログを表示させます。
情報: このコンテキストの再ロードを開始しました […] 情報: このコンテキストの再ロードが完了しました […]
この時点で、変更は既に反映されています。
さらに、サーブレット以外のJSPファイルや静的ファイルなどは、即時に反映されます。もし、変更が反映されていないように思える場合は、前項で紹介した[コンテキスト定義の更新]を再度実行すれば、反映されます。
つまり、アプリケーションの再デプロイの必要がなく、次々と、変更→確認の作業を行なっていくことができるのが、このTomcatプロジェクトの最大の魅力です。
デバッグもブレークポイントを置くだけ
第3回で紹介したように、Eclipseでのデバッグは、ブレークポイントを設置して、そこで処理を停止させることが可能です。これは、Tomcatプロジェクトでも例外ではありません。
しかも、Javaプロジェクトの場合は、デバッグ実行の必要がありましたが、Tomcatプロジェクトでは、その必要すらありません。単にブレークポイントを設置するだけです。ブレークポイントの設置方法も、Javaプロジェクト同様に、ソースコード左横をダブルクリックするだけです。その状態で、単にブラウザから該当URLにアクセスします。すると、そのブレークポイントで処理が停止します。
試しに、図17は、先のHelloServlet内にブレイクポイントを設置し、先のURLに再度アクセスした際のEclipseの画面です。
warファイルの作成
最後に、Tomcatプロジェクトでwarファイルを作成する方法を紹介しておきましょう。Tomcatプロジェクトがwarファイルの作成によるデプロイが不要といっても、それはあくまでローカル環境での開発段階の話です。サーバ環境では、warファイルを作成してデプロイする必要があります。そのようなwarファイルの作成にも、Eclipse Tomcat Pluginは対応しています。
それは、図14のプロジェクトフォルダを右クリックして表示されるメニューから
[Tomcatプロジェクト] > [プロジェクト設定に従いWARファイルを作成]
を選択するだけです。
ただし、事前に、設定を行なっておく必要があります。これは、同じく、プロジェクトフォルダを右クリックして表示されるメニューから[プロパティー]を選択してください。表示された設定画面の左ペインから[Tomcat]を選択し、[WARエクスポート設定]タブを選択してください。図18の画面が表示されます。
この画面中の[エクスポートするWARファイル]欄に、エクスポート先パスをあらかじめ設定しておいてください。すると、そのパスにwarファイルが作成されるので、それをサーバ環境上のTomcatにデプロイすれば、同じくアプリケーションが動作するようになります。
まとめ
今回は、EclipseでWebアプリケーションを開発するためのプラグインの1つとして、Eclipse Tomcat Pluginと、そのプラグインによって作成されるTomcatプロジェクトの使い方を紹介しました。次回は、予告した通り、もう1つのプラグインであるWTPによるWebアプリケーションの作成方法を紹介します。
この記事は参考になりましたか?
既に会員の方はを行ってください。
- 20年経ってもデファクトスタンダードIDEのEclipse入門連載記事一覧
- この記事の著者
-
WINGSプロジェクト 齊藤 新三(サイトウ シンゾウ)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook <個人紹介>WINGSプロジェクト所属のテクニカルライター。Web系製作会社のシステム部門、SI会社を経てフリーランスとして独立。屋号はSarva(サルヴァ)。HAL大阪の非常勤講師を兼務。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
