javax.servlet
クラス UnavailableException

java.lang.Object
  |
  +--java.lang.Throwable
        |
        +--java.lang.Exception
              |
              +--javax.servlet.ServletException
                    |
                    +--javax.servlet.UnavailableException
すべての実装インタフェース:
Serializable

public class UnavailableException
extends ServletException

Servlet やフィルタがスローする例外で、永久的に、 あるいは一時的に利用できない状態にあることを示す例外を定義しています。

Servlet やフィルタが永久的に利用出来ない状態になっているのは何かの問題があることを意味しています。 この場合、なんらかのアクションを起こすまでリクエストが処理されません。例えば、 Servlet が正しく設定されていない、 フィルタが不正な状態になっていることなどが考えられます。 コンポーネントではエラーと必要な調整操作の両方をログにとっておくべきです。

システムレベルの問題でわずかの間、リクエストが処理されないとき、 Servlet やフィルタが一時的に利用できない状態になります。 例えば、第 3 層に位置するサーバにアクセスできない、 メモリやディスク容量が不足しているためにリクエストを処理できないなどが考えられます。 この問題に対応するにはシステム管理者の協力が必要でしょう。

Servlet コンテナは利用不可能と判断された2つのタイプの例外を同じ方法で安全に処理できます。 ただし、一時的に利用出来ない状態をうまく扱うには Servlet コンテナをよりロバストにしなければなりません。 つまり、Servlet コンテナが再起動されるまで Servlet やフィルタへのリクエストを拒否するのではなく、 例外が発生している間だけブロックするようにならなければなりません。

バージョン:
$Version$
作成者:
Various
関連項目:
直列化された形式

コンストラクタの概要
UnavailableException(int seconds, Servlet servlet, String msg)
          推奨されていません。 Java Servlet API 2.2 以降。代わりに UnavailableException(String, int) を使ってください。
UnavailableException(Servlet servlet, String msg)
          推奨されていません。 Java Servlet API 2.2 以降。代わりに UnavailableException(String) を使ってください。
UnavailableException(String msg)
          Servlet が永久的に利用できない状態になったことを示す詳細なメッセージを付けて新規に例外を構築します。
UnavailableException(String msg, int seconds)
          Servlet が一時的に利用できない状態になっていることを示す詳細なメッセージとどのくらいの期間、 利用できない状態が続くかの予想時間を付けて新規に例外を構築します。
 
メソッドの概要
 Servlet getServlet()
          推奨されていません。 Java Servlet API 2.2 以降。代替手段はありません。 利用不可能であることを通知している Servlet を返します。
 int getUnavailableSeconds()
          Servlet が一時的に利用できない状態のままである予想される秒数を返します。
 boolean isPermanent()
          Servlet が永久的に利用できない状態になっているかどうかを示す booleanを返します。
 
クラス javax.servlet.ServletException から継承したメソッド
getRootCause
 
クラス java.lang.Throwable から継承したメソッド
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

UnavailableException

public UnavailableException(Servlet servlet,
                            String msg)
推奨されていません。 Java Servlet API 2.2 以降。代わりに UnavailableException(String) を使ってください。

パラメータ:
servlet - 利用できなくなった Servlet のインスタンス
msg - 詳細メッセージを指定する String

UnavailableException

public UnavailableException(int seconds,
                            Servlet servlet,
                            String msg)
推奨されていません。 Java Servlet API 2.2 以降。代わりに UnavailableException(String, int) を使ってください。

パラメータ:
seconds - Servlet が利用可能にならないと想定される秒数を指定する int 型の値。0 か 負の値を指定すると、 利用可能になると考えられる時間を設定しないことになります。
servlet - 利用できない状態になった Servlet
msg - ログファイルに出力、あるいは、 ユーザに示される詳細なメッセージを指定するString

UnavailableException

public UnavailableException(String msg)
Servlet が永久的に利用できない状態になったことを示す詳細なメッセージを付けて新規に例外を構築します。

パラメータ:
msg - 詳細なメッセージを指定する String

UnavailableException

public UnavailableException(String msg,
                            int seconds)
Servlet が一時的に利用できない状態になっていることを示す詳細なメッセージとどのくらいの期間、 利用できない状態が続くかの予想時間を付けて新規に例外を構築します。

場合によっては、予想時間が指定されないことがあります。 例えば、Servlet が実行に必要なサーバが起動されていないことを知ることはできても、 再起動されるのに必要な時間を通知できないかもしれません。 このような場合には負の値、または 0 を秒単位で指定します。

パラメータ:
msg - ログファイルに出力、あるいは、ユーザに表示される詳細なメッセージを指定する String
seconds - Servlet を利用できない状態が継続すると予想される数値を秒単位で指定する整数値。 0 または負の値にすると Servlet は時間を予想しないことを示します
メソッドの詳細

isPermanent

public boolean isPermanent()
Servlet が永久的に利用できない状態になっているかどうかを示す booleanを返します。 利用できない状態になっている場合は、Servlet 自身に問題があります。また、 システム管理者が操作して修正する必要があるでしょう。

戻り値:
Servlet が永久的に利用できない状態になってる場合は true。利用できる状態、あるいは、 一時的に利用できない状態にあるときは false

getServlet

public Servlet getServlet()
推奨されていません。 Java Servlet API 2.2 以降。代替手段はありません。 利用不可能であることを通知している Servlet を返します。

戻り値:
UnavailableException を投げた Servlet 型のオブジェクト。

getUnavailableSeconds

public int getUnavailableSeconds()
Servlet が一時的に利用できない状態のままである予想される秒数を返します。

このメソッドが負の値を返してきた場合は、Servlet は 永久的に利用できない状態になっているか、 利用不可能な状態のままになっている予測時間を示せないこと意味します。 例外が最初に報告された時点からの経過時間を修正しても影響はありません。

戻り値:
Servlet が一時的に利用できない状態にある時間を秒単位で示す 整数値。 Servlet が永久的に利用できない状態にあるか時間を予測できない場合は負の値


このドキュメントは、Ja-Jakarta Project により翻訳されました。コメントがある場合は、jajakarta-report@jajakarta.good-day.netまでお願いします。

Copyright © 1999-2002 The Apache Software Foundation. All Rights Reserved.