サーブレットアプリケーションのコンパイル

広告

今後サーブレットを使ったアプリケーションを開発する上でサーブレットプログラムをコンパイルする方法を確認しておきます。サーブレットが含まれるソースコードをコンパイルするにはクラスライブラリの「servlet-api.jar」や「jsp-api.jar」へクラスパスを通して置く必要があります。

p7-1

「servlet-api.jar」は「%CATALINA_HOME%¥lib¥」ディレクトリ内に含まれています。(%CATALINA_HOME%はTomcatをインストールしたディレクトリが設定された環境変数です。詳しくは「CATALINA_HOMEの設定」を参照して下さい)。

では下記のような簡単なサーブレットのプログラムを作成します。

HelloWorld.java

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

  public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException{

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();

    out.println("<html><head>Sample</head><body>");
    out.println("<p>Hello World!</p>");
    out.println("</body></html>");
  }
}

上記を「HelloWorld.java」として保存しました。

ではまずクラスパスを設定せずにコンパイルを行ってみます。

javac HelloWorld.java

p7-2

上記のようにエラーとなります。では次にクラスパスを指定してコンパイルを行ってみます。

javac -classpath %CATALINA_HOME%¥lib¥servlet-api.jar HelloWorld.java

※環境変数「CATALINA_HOME」に半角スペースが含まれるディレクトリが指定されている場合は"%CATALINA_HOME%¥lib¥servlet-api.jar"のようにダブルクオーテーションで囲って指定します。

※環境変数「CATALINA_HOME」を設定していない場合は「servlet-api.jar」へのフルパスを指定して下さい。

p7-3

無事コンパイルは出来ました。実行するのはまだ色々手続きが必要なので実行までは試せませんが、コンパイルは以上のように行って下さい。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)