Interstage Application Server J2EE ユーザーズガイド
|
目次
索引

|
10.7.4 HTTPエラーステータスコードに対するエラーページの指定について
ここでは、HTTPエラーステータスコードに対するエラーページの指定箇所と使用されるエラーページについて説明をします。
■HTTPエラーステータスコードに対するエラーページの指定箇所について
HTTPエラーステータスコードに対するエラーページの指定箇所を以下に示します。
- Webアプリケーション環境定義ファイル(deployment descriptor)
- サーブレット・ゲートウェイ環境定義ファイル(WWWサーバがInterstage HTTP Server以外の場合)
- WWWサーバの環境設定
どの指定箇所で指定したエラーページが使用されるかは、問題の発生箇所により異なります。必要に応じてエラーページの表示内容を変更または統一してください。
◆Webアプリケーション環境定義ファイル(deployment descriptor)
<error-page>タグで指定します。指定方法については“Webアプリケーション環境定義ファイル(deployment descriptor)”を参照してください。
本エラーページはWebアプリケーションで発生したHTTPエラーステータスコードに対して有効です。
本エラーページが使用される場合はエラーハンドリング込みで正常動作扱いとなりますので、WWWブラウザに返却されるHTTPステータスコードは200になります。HTTPエラーステータスコードに該当するエラーページを指定していない場合は、サーブレット・コンテナによってデフォルトのエラーページが使用され、HTTPエラーステータスコードは変更されません。
なお、WWWブラウザにレスポンスヘッダが送信済みの場合は、送信済みの情報は取り戻すことはできないので、送信済みのHTTPステータスコードになります。
◆サーブレット・ゲートウェイ環境定義ファイル(WWWサーバがInterstage HTTP Server以外の場合)
ErrorPage定義項目で指定します。発生するエラーや指定方法については“サーブレット・ゲートウェイ環境定義ファイル(WWWサーバがInterstage HTTP Server以外の場合)”を参照してください。
本エラーページはサーブレット・ゲートウェイで発生したHTTPエラーステータスコードに対して有効です。
◆WWWサーバの環境設定
以下の場合は、Servletサービスに制御が渡らないためWWWサーバの環境設定で指定したエラーページが使用されます。
- リクエストURLに含まれるWebアプリケーション識別子に誤りがある
- Webアプリケーションへのリクエストではない
■例
以下のHTTPエラーステータスコードを例に、各指定箇所で指定したエラーページが使用される場合の説明をします。
- HTTPエラーステータスコード 404(Not Found)
- HTTPエラーステータスコード 500(Internal Server Error)
◆HTTPエラーステータスコード 404(Not Found)
- Webアプリケーション環境定義ファイルで指定したエラーページが使用される場合
- Webアプリケーション配下のコンテンツが存在しない場合
- アプリケーションがServlet APIでHTTPエラーステータスコードに404を設定した場合
- サーブレット・ゲートウェイ環境定義ファイル(WWWサーバがInterstage HTTP Server以外の場合)で指定したエラーページが使用される場合
- サーブレット・ゲートウェイ以外のフィルタアプリケーションによって、URIのWebアプリケーション識別子部分が書き換えられている場合
- WWWサーバのエラーページが使用される場合
- リクエストURLに含まれるWebアプリケーション識別子に誤りがある場合
- Webアプリケーションへのリクエストではなく、WWWサーバ上にコンテンツが存在しない場合
◆HTTPエラーステータスコード 500(Internal Server Error)
- Webアプリケーション環境定義ファイルで指定したエラーページが使用される場合
- サーブレットまたはJSPアプリケーション実行中にExceptionまたはErrorが発生した場合
注)アプリケーション内で発生したエラーを捕捉(catch)したり、JSPのエラーページを設定するなどし、明示的にエラーハンドリングして正常動作させている場合を除きます。
- アプリケーションがServlet APIでHTTPエラーステータスコードに500を設定した場合
- サーブレット・ゲートウェイ環境定義ファイル(WWWサーバがInterstage HTTP Server以外の場合)で指定したエラーページが使用される場合
- サーブレット・ゲートウェイで異常を検出した場合
例:サーブレット・コンテナに接続できない場合
サーブレット・ゲートウェイのタイムアウトが発生した場合
- WWWサーバのエラーページが使用される場合(WWWサーバがInterstage HTTP Serverの場合)
以下の場合に使用されることがあります。
- サーブレット・ゲートウェイで異常を検出した場合
例:サーブレット・コンテナに接続できない場合
サーブレット・ゲートウェイのタイムアウトが発生した場合

WWWブラウザの種類や設定によっては意図したエラーページが表示されず、WWWブラウザで用意されたエラーページが表示されることがあります。
例:Microsoft(R) Internet Explorer 5.x, 6.0
「ツール」→「インターネット オプション」→「詳細設定」→「HTTP エラー メッセージを簡易表示する」が有効 (デフォルト値)の場合。
All Rights Reserved, Copyright (C) 富士通株式会社 2006