付録A.1 Webコンテナが返すエラーステータスコード
クライアントから,存在しないリソースや例外が発生したサーブレットなどにアクセスがあると,Webコンテナはエラーステータスコードを返します。Webコンテナが返すエラーステータスコードと,エラーステータスコードを返す条件を次の表に示します。
エラーステータスコード |
エラーステータスコードを返す条件 |
---|---|
400 Bad Request |
次のどれかに該当する場合,エラーステータスコード400が返ります。
|
401 Unauthorized |
BASIC認証を必要とするリソースに対して,次のようなアクセスがあった場合,エラーステータスコード401が返ります。
|
403 Forbidden |
次のどれかに該当する場合,エラーステータスコード403が返ります。
|
404 Not Found |
次のどちらかのアクセスがあった場合,エラーステータスコード404が返ります。
|
405 Method Not Allowed |
次の三つの条件をすべて満たしているアクセスの場合,エラーステータスコード405が返ります。
JSPにGET,POST,HEAD,OPTION以外のメソッドでアクセスがあった場合,エラーステータスコード405が返ります※8。 |
412 Precondition Failed |
If-Matchヘッダ,またはIf-Unmodified-Sinceヘッダで指定した条件に一致しない静的コンテンツへのアクセスの場合,エラーステータスコード412が返ります。 |
413 Request Entity Too Large |
リクエストボディのサイズが上限値を超えた場合,エラーステータスコード413が返ります。 |
416 Requested Range Not Satisfiable |
次のどれかに当てはまる不正なRangeヘッダの値を使用した静的コンテンツへのアクセスの場合,エラーステータスコード416が返ります。
|
500 Internal Server Error |
次のどれかに該当する場合,エラーステータスコード500が返ります。
|
501 Not Implemented |
静的コンテンツまたはjavax.servlet.http.HttpServletを継承したサーブレットに対して,GET,HEAD,POST,PUT,DELETE,OPTIONS,TRACEメソッド以外のHTTPメソッドでアクセスされた場合,エラーステータスコード501が返ります。 |
503 Service Unavailable |
次のどれかに該当する場合,エラーステータスコード503が返ります。
|
注※1 Webアプリケーションのバージョンが2.4以降の場合に該当します。
注※2 Webアプリケーションのバージョンが2.4以降の場合で,永久的に利用できないことを示すjavax.servlet.UnavailableExceptionが発生し,サーブレットおよびJSPファイルで例外をcatchしていないときが該当します。
注※3 次のような場合が該当します。
-
Webアプリケーションのバージョンが2.4以降の場合
サーブレットまたはJSPで例外をcatchしていないとき
-
Webアプリケーションのバージョンが2.3の場合
web.xmlの<error-page>タグまたはJSPファイルのpageディレクティブでエラーページの指定がなく,サーブレットまたはJSPファイルで例外をcatchしていないとき
注※4 Webアプリケーションのリロード機能,JSPファイルの再コンパイル機能,またはJ2EEアプリケーションのリロード機能を使用しない場合が該当します。
注※5 web.xmlで<auth-constraint>要素に<role-name>要素が定義され,<login-config>要素が定義されていない場合に該当します。この状態でアプリケーションを開始すると,KDJE39150-Wの警告メッセージがコンソール画面,およびメッセージログに出力されます。
注※6 Webアプリケーション単位の同時実行スレッド数制御,またはURLグループ単位の同時実行スレッド数制御を設定している場合が該当します。
注※7 次のような場合が該当します。
-
Webアプリケーションのバージョンが2.4以降の場合
一時的に利用できないことを示す,javax.servlet.UnavailableExceptionが発生し,サーブレットまたはJSPで例外をcatchしていないとき
-
Webアプリケーションのバージョンが2.3の場合
web.xmlの<error-page>タグまたはJSPファイルのpageディレクティブでエラーページの指定がなく,サーブレットまたはJSPファイルで例外をcatchしていないとき
注※8 Webアプリケーションのバージョンが3.1以降の場合が該当します。