トップページ -> 研究道具箱と入門演習 -> Web のための Java サーブレット・プログラミング -> Eclipse を使用しての Java サーブレット・プログラム開発
[サイトマップへ]   [全文検索へ]   [統計情報へ]   [掲示板へ]  

Eclipse を使用しての Java サーブレット・プログラム開発

Eclipse を使用して,Tomcat 上で動く,Java サーブレット・プログラム開発を行います.

  1. (前準備)新規サーバの定義

    Eclipse 内部の tomcat サーバ(あとで説明します)を使えるようにするためには,Eclipse で 新規サーバの定義という操作を行う必要があります. (新規サーバの定義は,Eclipse で1回行うだけでいいです).

  2. Java サーブレットのプログラムの作成

    Java サーブレットは,Java のクラスとして定義されることになります.作成は Eclipse 上で行います. 詳しくは,次の手順になります.

    1. 動的 Web プロジェクトの作成
    2. Java パッケージの作成
    3. サーブレットの作成

      「サーブレット」というときは,URL と Java のクラスとのマッピング定義が必要になるため,単なる「Java のクラス」と「サーブレット」という言葉は区別することにします.

    Eclipse を使わずにJava サーブレットのプログラムを作成する場合と比べると,Eclipse が,マッピング定義が自動で行ってくれるし,ディレクトリ作成も自動で行ってくれるという違いがあります.

  3. 動作テスト

    Java サーブレットのプログラムのテストを行うために,「Eclipse 内部の tomcat サーバ」(あとで説明します)を使います. つまり,Java サーブレットの作成とテストとデバッグの一連の作業を,Eclipse 上で行います.

  4. エクスポート

    動作テストが終わったら, Eclipse でエクスポート操作を行って, 公開 tomcat サーバ で動くようにします. ここでの「エクスポート」は簡単にいうと,Eclipse の配下にある各種ファイルを,公開 tomcat サーバが管理するディレクトリの下に コピーする操作です.

【この Web ページの目次】

【補足説明】

下記の 2つのサーバは別物です. 2つを同時に動かすことはできません(ポートを奪い合うことができないので).一方を動かすときは,もう一方を止めることになります.

  1. Eclipse 内部の tomcat サーバ:

    Eclipse では,Eclipse 内部の tomcat サーバが動き, Java サーブレットの動作テストなどに使う.

  2. 公開 tomcat サーバ:

    Eclipse とは無関係の tomcat サーバ(C:\tomcat55\bin\tomcat5w.exe 等で起動する Tomcat サーバのこと).当然, 公開 tomcat サーバが管理するディレクトリも Eclipse とは独立している.


必要となるソフトウエア

設定項目

前もって,Tomcat インストールディレクトリを調べておいてください. この Web ページでは次のように書きます.


新規サーバの定義とTomcat サーバ起動・停止

ここでは,Eclipse で,新規サーバの定義を行います. その後,定義がうまくいったかを確認するために, Eclipse 内部の tomcat サーバの起動と停止を行ってみます.

新規サーバの定義

  1. サーバー (Servers) ビューの表示
    1. Eclipse で 「ウィンドウ (Window)」→「ビューの表示 (Show View)」→「その他 (Other)」→「サーバー (Server)」→「サーバー (Servers)」と操作する.

    2. OK」をクリックすると,これで,Eclipse ウインドウの中にサーバービューが表示される(下記).

      ※ サーバービューが表示されないときは,Eclipse で 「ウィンドウ (Window)」→「パースペクティブを開く」→「その他 (Other)」→「Java)」 と操作した後,上記の操作をもう1度やり直すとうまくいくことがある.

  2. 新規サーバーの定義

    サーバー (Servers) ビュー内の任意の場所で,右クリックし,「新規 (New)」→「サーバー (Server)」と操作する

  3. サーバーの種類の選択

    新規サーバ定義ウインドウが表示されるので, Apacheを展開し「Tomcat v5.5 Server (Tomcat v5.5 サーバー)」)を選択して,「次へ (Next)」をクリック.

  4. インストール・ディレクトリーの設定

    次のウインドウでは,「Tomcat インストール・ディレクトリー」を C:\tomcat55に設定し,「終了」をクリック.

  5. サーバー (Servers) ビューの確認

    これで,Eclipse 内部の tomcat サーバについて,起動,停止,再起動,デバックモードでの起動を行うためのボタンなどが, サーバー (Servers) ビューの上端に表示されるようになります.

Eclipse 内部の Tomcat サーバ起動・停止

後で説明するように,Eclipse 内部の Tomcat サーバの起動と停止は自動で行われるのですが, 新規サーバの定義が正しくできたかの確認のために, 起動と停止を手動で行ってみます.

  1. サーバー (Servers) ビューを使います.

  2. サーバの起動ボタンをクリックするか, サーバー (Servers) ビュー内の「Tomcat v5.5 Server (Tomcat v5.5 サーバー)」の行を右クリックして, 「Start (起動)」を選ぶと,Eclipse 内部の Tomcat サーバが起動する.

  3. サーバー (Servers) ビュー内の「状況 (Status)」の欄が,Stopped になっていたのが, 始動済み (Started) に変わるので,起動できたことが確認できる.

    これで起動される tomcat サーバは,Eclipse 内部の Tomcat サーバです. 公開 tomcat サーバ (C:\tomcat55\bin\tomcat5w.exe) とは別ものです.

  4. 上記の手順で起動できることが確認できたら, 同様の手順で,サーバを停止しておくこと

【うまく起動できないときのヒント】

はまるとやっかいなので,分かる限りでヒントを書いておきます.

(参考)新しい Tomcat サーバの登録

新しい Tomcat サーバの登録(例えば,新バージョンの Tomcat サーバなど)は,次の手順で行います. (参考情報として載せています).

  1. Eclipse を起動
  2. Eclipse で 「ウィンドウ (Window)」→「設定 (Preferences)」→「サーバー (Server)」→「インストール済みランタイム (Installed Runtime)」
  3. 右側のウインドウで 「追加 (Add)」
  4. 「追加 (Add)」ボタンを押すと,新規サーバー・ランタイムのウインドウが開くので,「Apache」→「Apahce Tomcat v5.5」が選択されていることを確認(違っていれば,選択しなおす)し,「次へ (Next)」
  5. 次のウインドウの「Tomcat installation directory (Tomcat インストール・ディレクトリー)」には,Tomcat のインストールディレクトリが絶対パスで正しく設定されている(つまり「C:\tomcat55」)ことを確認.
  6. 「終了」

Java サーブレット・プログラムの作成手順

以下,Eclipse を使います. プロジェクトの作成クラスの定義実行という一連の操作を,図解で説明します.

Eclipse の使用にあたって,事前に決めておく事項

Java サーブレット・プログラムを動かすために,Eclipse のプロジェクト等を作ります. この Web ページでは,Eclipse のプロジェクト名,Java パッケージ名,Java サーブレットのクラス名は次のように記述します. (すでに同じ名前のプロジェクトがある,といったときは,プロジェクト名を変えてください).

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

下記の手順で,動的 Web プロジェクトを新規に作成します.

  1. (もし,プロジェクト・エクスプローラが開いていなければ)プロジェクト・エクスプローラを開く

    「ウインドウ (Window)」→「ビューの表示 (Show View)」→「プロジェクト・エクスプローラ (Project Explorer)」 と操作します.

  2. プロジェクトの新規作成の開始

    ファイル」→「新規 (New)」→「プロジェクト (Project)
    または,プロジェクト・エクスプローラ内で,右クリック→「新規 (New)」→「プロジェクト (Project)」

  3. Web」の展開

    新規プロジェクトのウインドウが開くので, 「Web」を展開する.

  4. 動的 Webプロジェクト (Dynamic Web Project)」の選択

    展開した「Web」の下にある 「動的 Webプロジェクト (Dynamic Web Project)」を選び, 「次へ」をクリック.

  5. プロジェクト名の設定など

    設定用のウインドウが開くので,下記の設定を行う. 設定が終わったら,「次へ」をクリック.

  6. 次の「プロジェクト・ファセット」は,デフォルトのままでよい

    次へ」をクリック.

    このウインドウが開かないことがあります.気にしなくてよい.

  7. 次の「Web モジュール」は,デフォルトのままでよい

    終了」をクリック.

  8. もし「関連付けられたパースペクティブを開きますか?」と聞いてきたら,「はい」をクリック

    このウインドウが開かないことがあります.気にしなくてよい.

  9. 作成されたプロジェクトの確認

Java パッケージ作成

Eclipse のプロジェクト・エクスプローラを使って, Java パッケージを作成します. Java パッケージ名には hoge.hoge.com のようなドメイン名を付ける習慣があることに注意してください. この Web ページでは,作成するJava パッケージ名は,hoge.hoge.com と書きます. (Java パッケージ名を変えるときは,読み替えてください).

  1. (もし,プロジェクト・エクスプローラが開いていなければ)プロジェクト・エクスプローラを開く

    「ウインドウ」→「ビューの表示」→「プロジェクト・エクスプローラ」 と操作します.

    Java パッケージの作成,クラスの作成などの作業は,プロジェクト・エクスプローラで行うことにします.

  2. Java パッケージを新規作成すべきプロジェクトの選択

    プロジェクト・エクスプローラに,プロジェクト一覧が表示されているはずです. Java パッケージを新規作成したいプロジェクト名 hoge右クリックして, 「新規」→「パッケージ」と操作します.

  3. Java パッケージ名の設定

    「Java パッケージ (Java package)」名前として,Java パッケージ名 hoge.hoge.comを記入する.

    その後,「終了」をクリック.

  4. Java パッケージの確認

    プロジェクト・エクスプローラにおいて, Java パッケージ hoge.hoge.com が増えていることを確認する.

    ※ プロジェクト・エクスプローラで, Java パッケージ名 hoge.hoge.comが表示されていないときは, プロジェクト hoge の左横の「+」をクリックして展開した後, 下の 「Java リソース; src」または「src」の左横の「+」をクリックして展開して下さい.

サーブレットの作成

サーブレットの作成の手順は次の通りです. 前準備として,Java パッケージ hoge.hoge.com を作成済みであること.

  1. 新規サーブレットの作成の開始

    プロジェクト・エクスプローラにおいて, サーブレットを作成したいJava パッケージ名 hoge.hoge.com右クリック

    ※ プロジェクト・エクスプローラで, Java パッケージ名 hoge.hoge.comが表示されていないときは, プロジェクト名の下の 「Java リソース; src」または「src」の下を展開して下さい.

  2. 新規 (New)」→「その他 (Other)」と操作する.

  3. サーブレットの選択

    サーブレットを作成したいので, 「Web」→「サーブレット (Servlet)」と操作し, 「次へ」をクリックします.

  4. サーブレットのクラス名等の指定

    新規に作成するサーブレットについて,Java パッケージ名,クラス名等を入力できるウインドウが開くので,設定を行います.

    1. 「Java パッケージ (Java package)」(3行目): Java パッケージ名 「hoge.hoge.com」を設定.

      ※ 「hoge.hoge.com」になっていなければ修正すること.

    2. 「クラス名」(4行目の「名前」のところ): Java サーブレットのクラス名 HelloWorld

  5. 次はデフォルトのままでよい

    次へ」をクリックします.

  6. 次はデフォルトのままでよい

    終了」をクリックします.

  7. 作成されたクラスの確認

参考Webページ: http://www.stackasterisk.jp/tech/java/wtp02_03.jsp

参考: Eclipse インストールと基本操作のWebページ

クラス定義と実行

  1. プロジェクト構成物の表示

    プロジェクト・エクスプローラで, プロジェクト名 hoge の左横の「+」をクリックして展開すると,「Java リソース; src」などが現れる(その他,いろいろ,プロジェクトの構成物が現れる).

    ※ すでに展開済みのときは,この手順は不要.

  2. クラスファイル一覧の表示

    プロジェクト・エクスプローラで, プロジェクト名 hoge の左横の「+」をクリックして展開すると,「Java リソース; src」などが現れる(その他,いろいろ,プロジェクトの構成物が現れる).

  3. Java パッケージ一覧の表示

    プロジェクト・エクスプローラで, 「Java リソース; src」の左横の「+」をクリックして展開すると,Java パッケージ一覧などが現れる.

    ※ すでに展開済みのときは,この手順は不要.

  4. クラスファイル一覧の表示

    プロジェクトエクスプローラで, 先ほど作成したJava パッケージ名 hoge.hoge.com の左横の「+」をクリックすると, クラスファイル一覧が現れます.

    ※ すでに展開済みのときは,この手順は不要.

  5. 定義したいクラスのファイルを開く

    HelloWorld クラスを定義したいので, プロジェクト・エクスプローラの クラスファイル一覧の中から, 「HelloWorld.java」をダブルクリックします. すると,エディタが開きます.

    このように,Eclipse のプロジェクト・エクスプローラで,定義したいクラスの「クラス名.java」ダブルクリックすると,エディタが開くことになっています.

    ※ なお,別のクラスを追加したいときは, Java パッケージ名を右クリックして「新規」→「クラス」です.

  6. エディタでクラス HelloWorld を定義する

    下記のクラス定義をカットアンドペーストして下さい(見本として作ったクラス定義です). (Java パッケージ名を「hoge.hoge.com」と書いているので,Java パッケージ名を別の名前にしている場合には,適切に読み替えてください).

    【プログラムの要点】

    • doGet() メソッドの中に,次のように,表示したい Web ページの中身を生成するプログラムを書きます.
    • Web ブラウザが,所定の「リクエスト URL」を使って Web ページを読み込もうとすると, HelloWorld クラスの doGet() メソッドが自動的に呼び出されるようになるということです.
      
              response.setContentType("text/html; charset=iso-2022-jp");
              PrintWriter out = response.getWriter();
              out.println("<html>");
              out.println("<head>");
              out.println("<title>HelloWorld</title>");
              out.println("</head>");
              out.println("<body>");
              out.println("<h1>HelloWorld</h1>");
              out.println("</body>");
              out.println("</html>");
              out.close();
      
      

      同じ方針で,例えば,リレーショナルデータベースの中身を取り出して Web ページを作ることも簡単にできます.

  7. ----------------------ここから---------------------
    package hoge.hoge.com;
    
    
    import java.io.*;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    
    /**
     * Servlet implementation class for Servlet: HelloWorld
     *
     */
     public class HelloWorld extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
        /* (non-Java-doc)
    	 * @see javax.servlet.http.HttpServlet#HttpServlet()
    	 */
    	public HelloWorld() {
    		super();
    	}   	
    	
    	/* (non-Java-doc)
    	 * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
    	 */
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
                response.setContentType("text/html; charset=iso-2022-jp");
                PrintWriter out = response.getWriter();
                out.println("<html>");
                out.println("<head>");
                out.println("<title>HelloWorld</title>");
                out.println("</head>");
                out.println("<body>");
                out.println("<h1>HelloWorld</h1>");
                out.println("</body>");
                out.println("</html>");
                out.close();
    
    	}  	
    	
    	/* (non-Java-doc)
    	 * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
    	 */
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
    	}   	  	    
    }
    ----------------------ここまで----------------------
    

  8. ソースを保存

    「ファイル」→「保管」または CTRL+S で保存される. 保存時にコンパイルされる

    コンパイル時のエラーや警告があれば, Eclipse 内の問題・ビューに表示されるので確認する.

  9. 下記の「Java サーブレット・プログラムのテスト実行」に進んでください.

Java サーブレット・プログラムのテスト実行

Eclipse のプロジェクト・エクスプローラを使用して,上記で作ったJava サーブレットのプログラム をテスト実行してみます.

  1. 実行したいサーブレットのクラスを選び,右クリック

    Eclipse のプロジェクト・エクスプローラで,実行したいクラス名.java (つまり HelloWorld.java)右クリック

  2. 実行 (Run As)」→「サーバーで実行 (Run on Server)」と操作

  3. サーバの選択

    ウインドウが開くので, 「ローカルホストの Tomcat v5.5 サーバ」が選択されていることを確認の後,「次へ (Next)」をクリック.

  4. 次はデフォルトのままでよい

    終了」をクリック.

  5. 下記のエラーが出て,Eclipse 内部の Tomcat サーバが起動しない場合には,C:\tomcat55\bin\tomcat5w.exe を使い,公開 Tomcat サーバを停止する

    すでに,C:\tomcat55\bin\tomcat5w.exe などを使って,「公開 Tomcat サーバを稼働させている」ときは, Eclipse 内部の Tomcat サーバが起動しない(ポートを奪い合うので)ので, C:\tomcat55\bin\tomcat5w.exe を使って, 公開 Tomcat サーバを停止させて下さい.

  6. Eclipse 内部の Tomcat サーバが起動することを確認

    コンソール・ビューに表示される.

  7. 実行結果の確認

    Eclipse の 組み込み Web ブラウザ (Internal Web ブラウザ)が開き,そこに実行結果が出る. 「Hello Java World!」と出れば成功.

    実行で,エラーが出る場合,

    C:\tomcat55\bin\tomcat5w.exe を実行してみる. サーバが stop できる状態(STOP ボタンが有効になっている状態)になって いたら,「公開 Tomcat サーバを稼働させている」ということなので, エラーが出て当然. STOP ボタンを押して,公開 Tomcat サーバを停止し,もう1度,上記の操作を行う.

    それでもうまく動かない場合は,Eclipse を再起動してみる.

    組み込みWeb ブラウザ内のアドレスバーの部分には,Eclipse 内部の Tomcat サーバに対するリクエスト URL が表示されます.

    
    http://localhost:8080/hoge/HelloWorld
    

    のようになっていることを確認しておきます.(「hoge」の部分は,プロジェクト名に読み替えること)


Java サーブレット・プログラムのデバッグ

今度は,プロジェクト・エクスプローラを使用して,Servlet プログラムのデバッグを行う.

デバッグ実行(ブレークポイント無し)

  1. Eclipse のプロジェクト・エクスプローラで,デバッグを行いたいクラス名.java (つまり HelloWorld.java) を右クリックし, 「Debug As (デバッグ)」→「Debug on Server (サーバーでデバッグ)」を選ぶ

  2. ウインドウが開くので,「Choose an existing server (既存のサーバを選択)」の方をチェックしておく.「次へ (Next)」→「次へ (Next)」→「終了 (Finish)」

  3. Tomcat のサーバが起動する(結果は,コンソール・ビューに表示される).

    デバッグモードでのサーバが起動できたことを確認したいときは, サーバー (Servers) ビューの「状況 (Status)」の欄が「デバッグ (Debugging)」になっているかを見る.

  4. (もし,doGet メソッド内にブレークポイントが無ければ)組み込みWeb ブラウザが開く.

    このウインドウに「Hello World!」と出れば成功.

    ブレークポイントが無いので,普通の「実行」と,デバッグ用の「実行」の違いがありません.

デバック実行(ブレークポイント有り)

  1. エディタを開く

    Eclipse のプロジェクト・エクスプローラで,デバッグを行いたいクラスの「クラス名.java 」ダブルクリック (ここでは,HelloWorld.javaをダブルクリック)すると,エディタが開きます.

  2. ブレークポイントの設定(2個以上)

    HelloWorld.java の doGet メソッド内に ブレークポイントを設定します.

    エディタで, doGet メソッド内の任意のプログラムコードについて,エディタの左端フレームをダブルクリックするか, エディタの左端フレームで,右クリックして,「Toggle Break Point (ブレークポイントの切り替え)」を選ぶ.

    ブレークポイントが設定されると,青色の丸で表示される.

    後の練習のため,ブレークポイントは2個以上作っておく

  3. ブレークポイントの設定が済んだら,上記の「デバッグ実行(ブレークポイント無し)」の手順を行います

    今度は,ブレークポイントを作ったので,プログラムの実行が止まる. 今度は,組み込みWeb ブラウザが開かず,デバッグ用の画面に切り替わります(この画面を「デバッグ・パースペクティブ」と呼びます).

    ※ なお,普段開いている画面は,「Javaパースペクティブ」です. 「デバッグ・パースペクティブ」と「Javaパースペクティブ」の切り替えは, 「ウインドウ (Window)」→「(Open Perspective) パースペクティブを開く」で(デバッグ中ならいつでも)出来ます.

  4. デバッグ・ビューの確認

    スレッド [http-8080-processor??] (実行中)のような表示がたくさん並んでいるのがデバッグ・ビューです.

    ※ もし,デバッグ・ビューが開いていなければ,「ウインドウ (Window)」→「Show View」→「Debug」で,デバッグ・ビューを開く.

    デバッグ・ビューがどこにあるのか分からないときも, 「Window」→「Show View」→「Debug」で,デバッグ・ビューが簡単に分かる.

  5. HelloWorld.java をエディタで開く

    ウインドウの中に「エディタ」があります.「HelloWorld.java」をクリック

  6. HelloWorld の確認

    エディタに,HelloWorld.java のソースコードが出たはずです. エディタの左端に黄色のマークがあり,現在,この行で,プログラムの実行が中断していることを示します.

  7. デバッグ・ビューでの操作

    デバッグ・ビューの中の任意の場所を 左クリックすると,デバッグ機能が動くようになります. F8(ファンクション8) で,次のブレークポイントまで実行が進むなど,機能を試してみよう.

    なお,デバッグ・ビューの中の任意の場所を 右クリックすると,デバッグ機能を選ぶウインドウ開きます.

  8. デバッグ用の画面 (デバッグ・パースペクティブ)」から,元の Java パースペクティブに戻るのは簡単です.
    「ウインドウ (Window)」→「(Open Perspective) パースペクティブを開く」→「Java」
    

    参考Webページ http://www.okisoft.co.jp/esc/eclipse3/eclipse-debug.html

    参考Webページ http://www.javaroad.jp/opensource/js_eclipse7.htm

以上で,Eclipse でのデバッグ実行ができるようになりました.


Java サーブレット・プログラムのエクスポート

上記では,Eclipse 内部の Tomcat サーバを使っていました.

今度は, Java サーブレット・プログラムを,Eclipse から切り離して,公開 tomcat サーバ上で動く(つまり, 単体で動く)ようにします. そのために,Eclipse のエクスポート (Export) 機能を利用します.

Eclipse のエクスポート機能が行っていること

公開 tomcat サーバ上で Java サーブレットを動かすために 「リクエスト URL ← マッピング → サーブレット名 ← マッピング → クラス名」という形式でのマッピングを行うとともに, 所定のディレクトリに Java クラスのファイルなどを置く必要があります.(詳しくは 「Tomcat 上で動く Java サーブレット・プログラム」の Web ページを見てください).

Eclipse でのエクスポート操作を行うと,このマッピング定義と,所定のディレクトリへのファイルの配置が自動で行われます.詳しくは以下の通りです.

Java クラスのファイル,ライブラリファイル,web.xml が置かれるディレクトリは, サーブレット配置サブディレクトリと,Tomcat インストールディレクトリから決まります.

前もって,Tomcat インストールディレクトリを調べておいてください.この Web ページでは次のように書きます.

サーブレット配置サブディレクトリは,自由に決めることができます(プロジェクト名と一致させるなどのルールはありません). Eclipse でのエクスポート時点に,手動で自由に設定することになります. この Web ページでは次のように書きます.

Java クラスのファイル,ライブラリファイル,web.xml が置かれるディレクトリは,次のようになります.

エクスポートの手順

  1. プロジェクト・エクスプローラで,先ほど作ったプロジェクト を右クリック.「エクスポート」を選択  (ファイル→エクスポートでも良い)

  2. WAR ファイルの選択

    選択ダイアログで,次の操作を行う.

     「Web」→「WARファイル」→「次へ」
    

  3. ファイル名等の指定

    WARエクスポートダイアログで,次のように指定する.

    「終了」をクリックするとで,エクスポートが実行される

  4. (オプション)WAR ファイルの確認

    C:\tomcat55\webapps 下に,拡張子 .war が付いたファイルができます.

  5. (オプション)web.xml の確認
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    	<display-name>
    	hoge2</display-name>
    	<servlet>
    		<description>
    		</description>
    		<display-name>
    		HelloWorld</display-name>
    		<servlet-name>HelloWorld</servlet-name>
    		<servlet-class>
    		hoge.hoge.com.HelloWorld</servlet-class>
    	</servlet>
    	<servlet-mapping>
    		<servlet-name>HelloWorld</servlet-name>
    		<url-pattern>/HelloWorld</url-pattern>
    	</servlet-mapping>
    	<welcome-file-list>
    		<welcome-file>index.html</welcome-file>
    		<welcome-file>index.htm</welcome-file>
    		<welcome-file>index.jsp</welcome-file>
    		<welcome-file>default.html</welcome-file>
    		<welcome-file>default.htm</welcome-file>
    		<welcome-file>default.jsp</welcome-file>
    	</welcome-file-list>
    </web-app>
    

    次のように設定されていることが読み取れます.

  6. 動作確認

    普通の Web ブラウザで,

    
    http://localhost:8080/hogename/HelloWorld
    

    を開くと,Hello World と表示されます. 「hogename」と書いているのは,先ほどエクスポートするときに付けた 指定した「サーブレット配置サブディレクトリ」のことです(.war ファイルのファイル名にもなっています).

    上記の例では,8080 ポートを使い,公開 tomcat サーバと通信しています.

Apache との連携

上記では,8080 ポートを使い,公開 tomcat サーバと通信しました. URL の中に,「8080」と書かずに,普通の URL で Java サーブレットを起動できるように するには,Apache のような Web サーバと連携させるのが普通です.

前もって必要なソフトウエア

  1. Apache 側の conf/extra/httpd-proxy.conf の設定

    httpd-proxy.conf は、以下のように設定します。 Order と Allow の行は、「127.0.0.1」からのアクセスだけを許すという設定です。

     
    <Location /<エクスポートするプロジェクト名>/>
        ProxyPass ajp://localhost:8009/<エクスポートするプロジェクト名>/
        Order allow,deny
        Allow from 127.0.0.1
    </Location>
    
  2. Apache を再起動

    conf/extra/httpd-proxy.conf を書き換えたから。

  3. Apache での動作確認 

    URL は次の通り

    Strutsを使っている場合,ページ遷移すると, http://localhost/<プロジェクト名>/アクション名.do のような URL が現れることを確認しておく.(つまり,http://localhost/<プロジェクト名>/アクション名.do と打ち込むことで,一種の単体テストが出来る)


参考Webページ

参考Web ページ: http://www.javaroad.jp/opensource/js_eclipse1.htm

参考Web ページ: http://www.stackasterisk.jp/tech/java/wtp02_03.jsp

参考Web ページ: http://www.stackasterisk.jp/tech/java/wtp02_01.jsp