JRun プログラマーガイド
|
|
サーブレットのプログラミングテクニック
|
サーブレット API のパッケージ
サーブレット API は、Sun Microsystems の Java Software Division によって公開された仕様です。この仕様には、Java サーブレットと Java サーブレットをサポートするサーバによってリクエストされるクラス、メソッド、動作の概要が記載されています。JRun Version 4.0 は、Java サーブレット仕様のバージョン 2.3 をサポートしています。
サーブレット API には、次のパッケージが含まれています。
javax.servlet
javax.servlet.http
JRun には詳細なサーブレット API オンラインドキュメントが添付されています。これは <JRun のルートディレクトリ>/docs/api
にあります。また、最新の API ドキュメントは http://java.sun.com/products/servlet からアクセスできます。
javax.servlet
次の表に示すように、javax.servlet
パッケージには、すべてのサーブレットに適用されるインターフェイス、クラス、例外が含まれています。
javax.servlet インターフェイス
次の表で、javax.servlet
のインターフェイスを説明します。
インターフェイス |
説明 |
RequestDispatcher
|
リクエストの処理を他のサーブレット、JSP、または HTML ファイルに転送するオブジェクトを定義します。 また、レスポンスに他のサーブレットの出力を含めることもできます。 |
Servlet
|
サーブレットインスタンスを初期化し、リクエストを処理し、サーブレットインスタンスを廃棄するメソッドを定義します。GenericServlet クラスはこのインターフェイスを実装します。 |
ServletConfig
|
サーブレットの init メソッドに情報を渡すオブジェクトを定義します。名前/値のペア、サーブレット名、Web アプリケーションの ServletContext オブジェクトへのリファレンスが含まれています。 |
ServletContext
|
サーブレットがサーブレットコンテナに関する情報に アクセスするために使用するメソッドを定義します。また、 アプリケーションの init パラメータが含まれています。 1 台の仮想マシン上の Web アプリケーションごとに 1 つの ServletContext があります。 |
ServletRequest
|
クライアントリクエスト情報をカプセル化するオブジェクトを定義します。各インスタンスには、名前/値のペア、属性、入力ストリームが含まれています。 |
ServletResponse
|
クライアントに返す情報をカプセル化するオブジェクトを定義します。バイナリデータや文字データを送信できます。 |
SingleThreadModel
|
各サーブレットインスタンスに一度に 1 つのリクエスト だけを実行させるオブジェクトを定義します。このインターフェイスの詳細については、『Servlet API JavaDoc』を参照してください。 |
javax.servlet クラス
次の表では javax.servlet
のクラスを説明します。
クラス |
説明 |
GenericServlet
|
プロトコルに依存しないサーブレット。通常はこのクラスではなく HttpServlet を使用します。 |
ServletInputStream
|
クライアントリクエストからバイナリデータを読み込むためのストリーム。通常、このクラスは使用しません。 |
ServletOutputStream
|
クライアントにバイナリデータを送信するためのストリーム。通常、このクラスは使用しません。 |
javax.servlet 例外
次の表では javax.servlet
の例外を説明します。
例外 |
説明 |
ServletException
|
サーブレットの問題を示します。 |
UnavailableException
|
サーブレットが使用可能でないことを示します。この例外は、一時的に使用不能であるか、または永久的に使用不能であるかを示すために使用できます。 |
javax.servlet.http
javax.servlet.http
パッケージには、HTTP の機能をリクエストするサーブレットに適用されるインターフェイスとクラスが含まれています。次の表で、これらを説明します。
javax.servlet.http インターフェイス
次の表では javax.servlet.http
のインターフェイスを説明します。
インターフェイス |
説明 |
HttpServletRequest
|
ServletRequest を HTTP サーブレット用に拡張します。このオブジェクトは、リクエストについてCookie 、属性、およびその他の情報にアクセスするために使用します。
|
HttpServletResponse
|
ServletResponse を HTTP サーブレット用に拡張します。このオブジェクトは、ブラウザにレスポンスを送信するために使用します。
|
HttpSession
|
複数のページリクエストの間で保持されるユーザー情報が含まれています。セッションはセッション ID をキーとして識別され、セッション ID は Cookie の中や URL パラメーターによって維持されます。 |
HttpSessionBinding
Listener
|
オブジェクトがセッションにバインドまたはバインド解除 されたときに、オブジェクトにその旨を通知します。この インターフェイスは、セッション固有のリソースを初期化 およびクリーンアップするために使用します。 |
javax.servlet.http classes
次の表では javax.servlet.http
のクラスを説明します。
クラス |
説明 |
Cookie
|
クライアント Cookie の作成、読み取り、変更をサーブレットに実行させます。Cookie を読み取るには、HttpServletRequest オブジェクトを使用します。Cookie は、HttpServletResponse オブジェクトを 使用して設定します。 |
HttpServlet
|
HTTP サーブレットを作成するために拡張するアブストラクトクラス。このクラスはすべての Web 指向のサーブレットに使用します。 |
HttpSessionBindingEvent
|
2 つのメソッド getName と getSession が含まれています。 HttpSessionBindingListener インターフェイスを実装しているオブジェクトがセッションにバインドされたり、バインドを解除されたりしたときに、そのオブジェクトに渡されます。
|
HttpUtils
|
便利なユーティリティメソッドが含まれています。 メソッドには、getRequestURL 、parsePostData 、parseQueryString があります。 |