!!!TomcatでのServlet実行環境構築方法
「Servlet」とは、Java言語で記述されたWebサーバーで動作するCGIのような位置づけです。
サーバー上で動作するプログラムです。
それを実行できるServletサーバーとして「Tomcat」というものが存在しています。
実行に必要なものは、
Javaアプリケーション・アプレットの開発キットであるJava2SDK(J2SE1.4.x)、
Servletサーバー「Tomcat 4.1.x」です。
それぞれをまずインストールしてください。
Java開発環境 J2SE1.4.xもインストールしておいてください。
:Tomcatのダウンロードサイト:http://jakarta.apache.org/tomcat/index.html
:Java関連のダウンロードサイト:http://java.sun.com/
!!Tomcatで実行用フォルダを作る
Tomcatをインストールしたディレクトリは、以下のような構成になっています。
[Tomcat 4.1]
+[bin]
+[common]
...
+[webapps]
+[examples]
+[ROOT]
+[tomcat-docs]
+[webdav]
例えば、「''http://localhost:8080/examples/servlet/HelloWorldExample''」
のようにサーブレットをWebブラウザから実行する場合は、実際のサーブレットのclassファイルは、「Tomcat 4.1\webapps\examples\WEB-INF\classes\HelloWorldExample.class」に存在することになります。
ここで、実行用のディレクトリを「mydir」として、この中に自分が作ったサーブレットプログラムを収める、とします。
ディレクトリは、以下のように作成する必要があります。
[Tomcat 4.1]
...
+[webapps]
+[examples]
+[ROOT]
+[tomcat-docs]
+[webdav]
+[mydir]
+[WEB-INF]
+[classes]
このとき、「mydir」のディレクトリ内に、「WEB-INF」ディレクトリ(大文字英字で)を作成します。
さらにその中に「classes」ディレクトリを作成します。この「classes」の中にコンパイル後のサーブレットのclassファイルを置くようにしてください。
次に、「このディレクトリを追加した」ということを知らせるための1つのファイルの修正と、1つのファイルの追加が必要になります。
!server.xmlの編集
「Tomcat 4.1\conf」内の「server.xml」に対し、「mydir」が追加された、という情報を加えます。
「
この場合、サーブレット実行などのときにエラーがあった場合「Tomcat 4.1\logs\localhost_mydir_log.日付.txt」のファイルに ログ情報が吐き出されることになります。
以上を加えて、「server.xml」を保存します。
!web.xmlの追加
作成したディレクトリ「mydir」内の、「mydir\WEB-INF」内に「web.xml」を作成します。
内容は以下のような感じで記述します。
mydir set
mydir servlets and JSP pages.
invoker
/servlet/*
これで、「mydir」内の「WEB-INF\classes」にサーブレットのclassファイルを放り込むと、 すべてサーブレットとして認識されるようになります。
上記の設定を行った後、一度Tomcatのサービスを再起動してください。
次は、サーブレットファイルの作成方法に入ります。
!!Servletファイルの作成方法
まず、Javaアプリの基本的なことですが、 Java(J2SE)をインストールしたディレクトリの[bin]にPATHを通しておいてください。
後は、Tomcatとインストールしたディレクトリに'''「Tomcat 4.1\common\lib\servlet.jar」'''があることを確認してください。
「MyServlet.java」というファイルを作ります。
import java.io.*;
import java.text.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class MyServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
response.setContentType("text/html; charset=SHIFT_JIS");
PrintWriter out = response.getWriter();
out.println("");
out.println("
");
out.println("Hello World!!");
out.println("");
out.println("");
out.println("Hello World!!
");
out.println("");
out.close();
}
}
これは、ただ単にWebブラウザで「Hello World!」と表示させるだけのサンプルです。
コンパイルは、「servlet.jar」をCLASSPATHに加えるようにして DOSプロンプトにて以下のように行います。
javac -classpath "D:\WinApp\Apache Group\Tomcat 4.1\common\lib\servlet.jar" MyServlet.java
これで、エラーなくコンパイルが完了すると「MyServlet.class」が生成されているはずです。
これを、Tomcatの「Tomcat 4.1\webapps\mydir\WEB-INF\classes」に放り込んでください。
後は、Tomcatの起動を確認して、
Webブラウザにて「''http://localhost:8080/mydir/servlet/MyServlet''」と指定すると、サーブレットが実行されることになります。
!!Tomcat Webアプリケーションマネージャ
「''http://localhost:8080/index.jsp''」より開くページにて、「Tomcat Manager」を選択してください。ユーザー名「admin」・パスワード未記入(デフォルト)にて、管理ページにアクセスできます。
もし、サーブレットが起動しないという場合は、「mydir」がここで実行中かどうか確認してみてください。
falseの場合は、ログファイルにエラー情報が出ているはずです。