<servlet-mapping>要素

広告

次に<servlet-mapping>要素について見ていきましょう。<servlet-mapping>要素はどのようなURLを使ってサーブレットが呼び出されたときにどのサーブレットを呼び出すかを定義するためのものです。

下記のように定義されています。

<xsd:complexType name="servlet-mappingType">
  <xsd:sequence>
    <xsd:element name="servlet-name" type="j2ee:servlet-nameType" />
    <xsd:element name="url-pattern" type="j2ee:url-patternType" />
  </xsd:sequence>
  <xsd:attribute name="id" type="xsd:ID" />
</xsd:complexType>

要素と記述する回数だけ抜き出してみると下記のようになります。

<servlet-mapping>
 |
 +- <servlet-name> (1回)
 |
 +- <url-pattern> (1回)
 |
</servlet-mapping>

2つの要素だけが定義されていますが、どちらも必ず1回だけ記述する必要があります。

<servlet-name>要素には呼び出す対象のサーブレット名を指定します。サーブレット名は事前に<servlet>要素内で定義した<servlet-name>要素の中から指定します。そして<url-pattern>要素にどのようなURLパターンで呼び出されたらこのサーブレットを呼び出すのかを指定します。

例えば下記のような感じで使います。

<web-app>
  <servlet>
    <servlet-name>
      サーブレット名1
    </servlet-name>
    <servlet-class>
      実際のクラス名1
    </servlet-class>
  </servlet>

  <servlet>
    <servlet-name>
      サーブレット名2
    </servlet-name>
    <servlet-class>
      実際のクラス名2
    </servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>
      サーブレット名1
    </servlet-name>
    <url-pattern>
      URLパターン1
    </url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>
      サーブレット名1
    </servlet-name>
    <url-pattern>
      URLパターン2
    </url-pattern>
  </servlet-mapping>

</web-app>

URLパターンの記述方法は大きく分けて4つあります。次のページから1つ1つ確認していきましょう。

( Written by Tatsuo Ikura )

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