Tomcat で、サーブレットのクラスファイル(.class)を URL にマップする方法

Tomcat を使っていて、サーブレットのクラス名 our_servlet.class に次の URL をマップしたい場合を考える。
https://localhost:8080/our_dir/ourservlet
  1. まず $CATALINA_HOME/webapps/ を探す。 ここで、$CATALINA_HOME とは Tomcat をインストールしたディレクトリを表す環境変数である。
  2. our_servlet.class を置くディレクトリ
    $CATALINA_HOME/webapps/our_dir
    を作る。もしサーブレットを URL のルート(https://localhost:8080/)にしたいのであれば、サーブレットは$CATALINA_HOME/webapps/our_dir に置くことになる。
  3. 次のディレクトリを作る。
    $CATALINA_HOME/webapss/our_dir/WEB-INF
    $CATALINA_HOME/webapss/our_dir/WEB-INF/classes
  4. 次のディレクトリにサーブレットのクラスファイル(.class)を置く。
    $CATALINA_HOME/webapss/our_dir/WEB-INF/classes
  5. $CATALINA_HOME/webapss/our_dir/WEB-INF のディレクトリに web.xml という名前のファイルを置く。
  6. 以下のように $CATALINA_HOME/webapss/our_dir/WEB-INF/web.xml にタグを書く。
    <servlet-name>&hellip;</servlet-name>
    <servlet-class>&hellip;</servlet-class>
    <servlet-mapping>&hellip;</servlet-mapping>
    具体的には次のようになる。
    <?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?>
    <!DOCTYPE web-app
    <span>&nbsp;&nbsp;&nbsp; PUBLIC &quot;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&quot;
    &nbsp;&nbsp;&nbsp;&quot;https://java.sun.com/dtd/web-app_2_3.dtd&quot;>

    <web-app>

    &nbsp;&nbsp;&nbsp;&nbsp;<servlet>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<servlet-name>OUR SERVLET</servlet-name>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<servlet-class>our_servlet</servlet-class>
    &nbsp;&nbsp;&nbsp;&nbsp;</servlet>

    &nbsp;&nbsp;&nbsp;&nbsp;<servlet-mapping>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<servlet-name>OUR SERVLET</servlet-name>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<url-pattern>/ourservlet</url-pattern>
    &nbsp;&nbsp;&nbsp;&nbsp;</servlet-mapping>

    </web-app>
トラックバック URL: https://perltips.twinkle.cc/trackback/146