Tomcatに実際にwebアプリケーションの配備を配備して、動作を確認します。
まずはディレクトリの作成から行います。
/usr/share/tomcat5/webappsディレクトリに移動して、testディレクトリを作成し、さらにそのディレクトリのなかにWEB-INFディレクトリを作成します。
cd /usr/share/tomcat5/webapps/mkdir testcd test/mkdir WEB-INF
WEB-INFディレクトリの中にclassesディレクトリ、libディレクトリとweb.xmlファイルを作成します。
cd WEB-INF/mkdir classesmkdir libtouch web.xml
ここからはサーブレットでTestプログラムを作成します。
classesディレクトリに移動してからTest.javaを作成します。
cd classes/vi Test.java
[java]
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Test extends HttpServlet{
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=Windows-31J");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Testプログラム</h1>");
out.println("</body>");
out.println("</html>");
out.close();
}
}
[/java]
サーブレットのjavaソースファイルをコンパイルします。
サーブレットのコンパイルを行うにはサーブレットAPIをクラスパスに追加する必要があります。
javac -classpath /usr/share/tomcat5/common/lib/\[servlet\].jar Test.java
コンパイルが成功すると同じディレクトリにTest.classファイルが作成されます。
最後に先ほど作成したweb.xml(配備記述子)を編集します。
<servlet>タグを記述してサーブレットのクラスに名前を付けます。
<servlet-name>タグにはつけたい名前を、<servlet-class>タグにはコンパイルして作成したクラス名(.classは書かない)を記述します。
<servlet-mapping>タグは呼び出すURLパス名を設定します。
<servlet-name>タグには先ほどつけた名前を、<url-pattern>タグにはURLのパスを記述します。
vi ../web.xml
[xml]
<?xml version="1.0" encoding="ISO-8859-1"?>
<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>
test
</servlet-name>
<servlet-class>
Test
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>
test
</servlet-name>
<url-pattern>
/test/
</url-pattern>
</servlet-mapping>
</web-app>
[/xml]
Tomcatを再起動してブラウザからhttp://192.168.0.10:8080/test/test/にアクセスします。
service tomcat5 restart
コメント