2009-12-28

GAE/J、ルートにサーブレット

アプリケーションのトップに index.html じゃなくて、メインのサーブレットを置きたいなと思って web.xml をいじり中。
<servlet>
    <servlet-name>main</servlet-name>
    <servlet-class>info.kuribo.example.MainServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>main</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
と書いてみたけれど、実際にアクセスしてみると index.html が表示される…。あ、そうそうこれだと思ってさらに
<welcome-file-list>
    <welcome-file>index.html</welcome-file>
</welcome-file-list>
を消してみたものの、変わらず。

結局、その後に war ディレクトリの index.html 自体を削除したらちゃんと思ったとおりに動いた。ルートディレクトリは、サーブレットのマッピングやウェルカムファイルのリストがどうあれ、index.html があったら優先して表示する仕組みみたい。マッピングの書き方が間違っているのかもしれないけれど…。

とりあえず、関係なかったウェルカムファイルのリストだけ、元に戻す(サブディレクトリで影響が出るかも、と)。

No comments:

Post a Comment