2

JSF2 と Glassfish 3.0 を使用しています。

私は非常に単純なアプリケーションを持っており、エラー用のデフォルトのエラーページをいくつか設定しようとしてい404ます500

これはWEB.XMLセクションです:

<error-page>
    <exception-type>404</exception-type>
    <location>/error.xhtml</location>
</error-page>

<error-page>
    <exception-type>500</exception-type>
    <location>/error.xhtml</location>
</error-page>

error.xhtml は存在しますが、ブラウザには標準のHTTP Status 404 -警告が表示されます。

4

1 に答える 1

13

<exception-type>、 のサブクラスの完全修飾名を指す必要がありjava.lang.Exceptionます。例えば

<error-page>
    <exception-type>javax.faces.application.ViewExpiredException</exception-type>
    <location>/expired.xhtml</location>
</error-page>

しかし、そこにあるのはHTTP ステータス コードだけです。<error-code>代わりに使用する必要があります。

<error-page>
    <error-code>500</error-code>
    <location>/error.xhtml</location>
</error-page>

ちなみに、404 と 500 が同じエラー ページを指すことはありません。404 は「ページが見つかりません」で、通常はサーバーのミスではなく、クライアント自身のミスです。「ページが見つかりません」ではなく、一般的なエラー ページが表示されると、非常に混乱します。

于 2012-04-24T13:06:55.677 に答える