TOP設計・移行・活用> サーブレットの作成
How to Eclipse!
Eclipse3ではじめるJava Webアプリケーション開発

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

   ここで作成するサーブレットに必要なことをまとめると、次のようになります。
  • サーブレットクラスの作成
  • web.xmlを作成し、URLマッピングを記述する

   以下の図にあるように2つのファイルを作成していきます。それぞれのファイルの作成について、順番に説明を行っていきましょう。

サーブレット作成に必要なファイル
図1:サーブレット作成に必要なファイル



サーブレットクラスの作成

   まずサーブレットクラスを作成します。ここでは、hogeパッケージを作成し、そこにHogeServlet.javaという名前でサーブレットクラスを作成します。サーブレットクラスを作成する手順は、第2回で解説したJavaクラスの作成と同じ手順です。作成したクラスを次のように編集します。

HogeServlet.javaクラスのソース
package hoge;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HogeServlet extends HttpServlet{

protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.getWriter().println("hello");
}
}
URLマッピング

   次にURLマッピングのためにweb.xmlを作成します。Tomcatプロジェクトを作成した時点ではweb.xmlが存在しませんので、新規ファイルとして作成します。作成する場所はWEB-INF直下で、ファイル名は必ずweb.xmlにしてください。そして、作成したweb.xmlを以下のように編集します。

web.xmlのソース
<?xml version="1.0"?>

<web-app 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"
version="2.4">

<servlet>
<servlet-name>hoge</servlet-name>
<servlet-class>hoge.HogeServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>hoge</servlet-name>
<url-pattern>/hoge</url-pattern>
</servlet-mapping>

</web-app>

   なお、手動と目視だけでXMLを記述すると間違えやすいので、既存のweb.xml(例えば、%CATALINA_HOME%/webapps/ROOT/WEB-INF/web.xmlなど)をコピーし、内容を書き換えた方が確実です。また、ここではサーブレット2.4のXMLスキーマで書いていますが、2.3以前で使われていたDTDで記述することもできます。


サーブレットの実行

   2つのファイルを作成したら、サーブレットの動作確認を行ってみましょう。Tomcatを起動し、ブラウザでhttp://localhost:8080/myweb/hogeにアクセスしてください。図2のように表示されればOKです。

サーブレットの実行
図2:サーブレットの実行



コンソールビューの補足

   Tomcatを利用していると、ついつい起動していることを忘れて、重複して起動してしまうことがあります。この場合は「コンソールビュー」に図3のような情報が表示され、後から起動したTomcatは起動されません。

コンソールビュー
図3:コンソールビュー


   Tomcatを含め、複数のJavaアプリケーションを起動すると、今何が起動していて、コンソールにどのプロセスの情報が表示されているのかがわかりにくくなります。そのようなときは、コンソールビューのツールバーにある「終了したすべての起動を除去」で不要なものを消し、さらに実行中のプロセスも「終了」して、キレイな状態にしてからTomcatを起動し直してください。

   また、複数のプロセスを同時に起動している場合などで、前の出力を確認したいときは「プロセスの切り替え」で出力の表示を切り替えることができます。

1   2  3  4  次のページ



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


INDEX
第6回:Webアプリケーションの開発(2)〜サーブレットの作成〜
サーブレットの作成
  サーブレットのデバッグ
  Tomcatプラグインのその他の話題
  Tomcatプラグインを利用しない方法