Eclipse の使い方 Servlet 編

Eclipse(バージョン3.4 以降)で Servlet を実行する方法を紹介する。 (Jetty という Eclipse に内蔵されているサーブレットコンテナを使用する。 なお、Apache Tomcat など他のサーブレットコンテナを使用することも可能である。)

Eclipse の機能は膨大なので、ここですべての機能を紹介することはとてもできない。 このページでは、本講習でよく使うと思われるごく一部の機能を紹介する。

Servlet ではない、通常の Java アプリケーション・アプレットの場合は、 「ソフトウェア工学演習II」の Eclipse の使い方 Java アプリケーション編を見よ。

動的 Web プロジェクトの作成

動的 Web プロジェクトは Java Servlet/JSP などのためのプロジェクトであり、 Servlet の実行に必要な設定ファイルを自動生成してくれる。

  1. 「ファイル (File)」―「新規 (New)」―「プロジェクト (Project..)」で現れる 「ウィザードを選択 (Select a wizard)」というウインドウで 「Web」を展開し、 「動的 Web プロジェクト (Dynamic Web Project)」を選択して、 「次へ (Next)」をクリックする。
  2. 「プロジェクト名 (Project name)」は英数字で適当につけて、 「ターゲット・ランタイム (Target runtime)」が「J2EE プレビュー」 (Servlet 3.0 を試すために Tomcat を利用する場合は「Apache Tomcat v7.0 サーバー」) になっていることを確認して、「終了 (Finish)」をクリックする。
    「ターゲット・ランタイム」が「<なし> (<None>)」 になっている場合、
    1. 右の「新規 (New..)」を クリックし、
    2. 「ランタイム環境のタイプを選択 (Select the runtime type:)」で、「基本」 —「J2EE プレビュー」(Tomcat を利用する場合は 「Apache」—「Apache Tomcat v7.0 サーバー」) を選択し、「終了 (Finish)」をクリックする。

    (以下の説明では JouhouKankyouJikken2 というプロジェクト名をつけると仮定する。)

以降、本講習で作成するプログラムは、 基本的にすべてこのプロジェクト内に作成すれば良い。

Servletの作成

  1. 「プロジェクト・エクスプローラー (Project Explorer)」の中でクラスを作成する 動的 Web プロジェクトを選択してから、 「ファイル (File)」―「新規 (New)」―「その他 (Other..)」を選択する。
  2. 「ウィザードを選択 (Select a wizard)」というウインドウで「Web」を展開し、 「サーブレット (Servlet)」を選択し、 「次へ (Next)」をクリックする。
  3. 「クラス名 (Class name)」に作成するクラスの名前を入力し、 「終了 (Finish)」をクリックする。
    (以下の例では HelloServlet という名前をつけると仮定する。)
  4. クラス定義のテンプレートが表示されるので、 残りの部分を入力する。例えば、次のような import文:
      import java.io.PrintWriter;
      import java.io.IOException;
      import javax.servlet.ServletException;
      import javax.servlet.http.HttpServletRequest;
      import javax.servlet.http.HttpServletResponse;
    
    を追加し、次のようなメソッドを定義する。 (灰色はテンプレートに既に用意されている部分である。)
      
      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
          response.setContentType("text/plain; charset=Windows-31J");
          PrintWriter out = response.getWriter();
          out.println("Hello World!");
          out.close();
      }
    
  5. 「ファイル (File)」―「保管 (Save)」(もしくは Ctrl+s)でファイルの保存と同時に自動的にコンパイルされる。
注意: サーブレットは必ず上記の方法で作成すること。 コピー・ペーストや「名前変更」などで作成しても、設定ファイル (web.xml) が書き換えられないため、うまく動作しない。また、Java ソースファイルの直接削除もしてはいけない。(Java ファイルをコピペで作成・名前変更・削除した場合は、web.xml (Eclipse のプロジェクト・エクスプローラーでは WebContent の下の WEB-INF の下の web.xml)を編集する必要がある。)

HTML・JSPの作成

動的 Web プロジェクトの場合、HTML, JSP など Servlet 以外のコンテンツは WebContent というフォルダに置く。 (このフォルダの内容がアプリケーションルートにコピーされる。)

  1. 「プロジェクト・エクスプローラー (Project Explorer)」の中でクラスを作成する動的 Web プロジェクトの 「WebContent」というフォルダを選択してから、 「ファイル (File)」―「新規 (New)」―「その他 (Other..)」を選択する。
  2. 「ウィザードを選択 (Select a wizard)」というウインドウで「Web」を展開し、 「HTML」(JSPの場合は「JSP」)を選択し、「次へ (Next)」をクリックする。
  3. 「ファイル名 (File name)」に作成するファイルの名前を入力し、 「終了 (finish)」をクリックする。
  4. テンプレートが表示されるので、残りの部分を入力する。
  5. http://localhost:8080/プロジェクト名/ファイル名 で見ることができる。

Servlet・HTML・JSPの実行

  1. 「実行 (Run)」―「実行 (Run As)」―「サーバーで実行 (Run on Server)」で、 「サーバーで実行」 というウインドウが現われるので、「localhost の J2EEプレビュー」 を選択していることを確認して、「終了 (Finish)」をクリックする。 サーバが起動するとともに Eclipse 内に Web ブラウザが起動して、サーブレットが生成したページが表示される。

さらなる参考リンク


Koji Kagawa (kagawa@eng.〜)
(〜の部分は SPAM mail 予防のため省略します。)