web-dev-qa-db-ja.com

Tomcatのすべてのアプリケーションのエラーページを設定する

デフォルトのエラーページを表示したくないので、Tomcat6でカスタムエラーページを設定しようとしています。私のエラーページは静的なhtmlであり、jspや動的なものはありません。

各アプリケーションのweb.xmlを介してこれを行う方法を知っていますが、サーバー全体に対して1回だけエラーページを設定したいと思います。

次のフラグメントをグローバルweb.xml(conf内)に追加しようとしましたが、locationの下に何を追加しても、表示されません。

<error-page>
    <error-code>404</error-code>
    <location>/404.html</location>
</error-page>

カスタムエラーページをゴバリーに定義するにはどうすればよいですか?ありがとう!

1
phisch

あなたの構文は正しいです(そして私にとってはうまくいきました)。ただし、デプロイされたすべてのWebアプリを機能させるには、ルートレベルに404.htmlというファイルが必要です。

それをしたくない場合は、StandardHostの一部としてほとんど知られていないerrorReportValveClassがあり、キャッチされていないすべてのエラーを処理するためのクラスの独自の実装を提供できます。

http://Tomcat.Apache.org/Tomcat-6.0-doc/config/Host.html

2
Tim Funk