インターフェース RequestDispatcher
RequestDispatcher
オブジェクトを作成します。これは、特定のパスにあるか、特定の名前で指定されたサーバーリソースのラッパーとして使用されます。 このインターフェースはサーブレットをラップすることを目的としていますが、サーブレットコンテナーは RequestDispatcher
オブジェクトを作成して、あらゆる型のリソースをラップできます。
フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSE
エラーディスパッチ中に例外オブジェクトが伝播されるリクエスト属性の名前static final StringSE
エラーディスパッチ中に例外オブジェクトの型が伝播されるリクエスト属性の名前static final StringSE
エラーディスパッチ中に例外メッセージが伝播されるリクエスト属性の名前static final StringSE
エラーディスパッチ中に、処理によってエラーが発生したリクエストのメソッドが伝播されるリクエスト属性の名前。static final StringSE
エラーのディスパッチ中に、処理によってエラーが発生したリクエストのクエリ文字列が伝播されるリクエスト属性の名前。static final StringSE
処理によりエラーが発生したリクエスト URI がエラーディスパッチ中に伝播されるリクエスト属性の名前static final StringSE
エラーディスパッチ中にエラーが発生したサーブレットの名前が伝播されるリクエスト属性の名前static final StringSE
エラーディスパッチ中にレスポンスステータスが伝播されるリクエスト属性の名前static final StringSE
元のコンテキストパスがforward
のターゲットで使用可能になるリクエスト属性の名前static final StringSE
元のHttpServletMapping
がforward
のターゲットで使用可能になるリクエスト属性の名前static final StringSE
forward
のターゲットが元のパス情報を利用できるようにするリクエスト属性の名前static final StringSE
元のクエリ文字列がforward
のターゲットで利用可能になるリクエスト属性の名前static final StringSE
元のリクエスト URI がforward
のターゲットで利用可能になるリクエスト属性の名前static final StringSE
元のサーブレットパスがforward
のターゲットで使用可能になるリクエスト属性の名前static final StringSE
include
のターゲットのコンテキストパスが格納されるリクエスト属性の名前static final StringSE
include
のターゲットのHttpServletMapping
が保存されるリクエスト属性の名前static final StringSE
include
のターゲットのパス情報が保存されるリクエスト属性の名前static final StringSE
include
のターゲットのクエリ文字列が保存されるリクエスト属性の名前static final StringSE
include
のターゲットのリクエスト URI が保存されるリクエスト属性の名前static final StringSE
include
のターゲットのサーブレットパスが保存されるリクエスト属性の名前メソッドのサマリー
修飾子と型メソッド説明void
forward
(ServletRequest request, ServletResponse response) リクエストをサーブレットからサーバー上の別のリソース(サーブレット、JSP ファイル、HTML ファイル)に転送します。void
include
(ServletRequest request, ServletResponse response) レスポンスにリソース(サーブレット、JSP ページ、HTML ファイル)のコンテンツを含めます。
フィールドの詳細
FORWARD_REQUEST_URI
元のリクエスト URI がforward
のターゲットで利用可能になるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
FORWARD_CONTEXT_PATH
元のコンテキストパスがforward
のターゲットで使用可能になるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
FORWARD_MAPPING
元のHttpServletMapping
がforward
のターゲットで使用可能になるリクエスト属性の名前- 導入:
- Servlet 4.0
- 関連事項:
FORWARD_PATH_INFO
forward
のターゲットが元のパス情報を利用できるようにするリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
FORWARD_SERVLET_PATH
元のサーブレットパスがforward
のターゲットで使用可能になるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
FORWARD_QUERY_STRING
元のクエリ文字列がforward
のターゲットで利用可能になるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
INCLUDE_REQUEST_URI
include
のターゲットのリクエスト URI が保存されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
INCLUDE_CONTEXT_PATH
include
のターゲットのコンテキストパスが格納されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
INCLUDE_PATH_INFO
include
のターゲットのパス情報が保存されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
INCLUDE_MAPPING
include
のターゲットのHttpServletMapping
が保存されるリクエスト属性の名前- 導入:
- Servlet 4.0
- 関連事項:
INCLUDE_SERVLET_PATH
include
のターゲットのサーブレットパスが保存されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
INCLUDE_QUERY_STRING
include
のターゲットのクエリ文字列が保存されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
ERROR_EXCEPTION
エラーディスパッチ中に例外オブジェクトが伝播されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
ERROR_EXCEPTION_TYPE
エラーディスパッチ中に例外オブジェクトの型が伝播されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
ERROR_MESSAGE
エラーディスパッチ中に例外メッセージが伝播されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
ERROR_METHOD
エラーディスパッチ中に、処理によってエラーが発生したリクエストのメソッドが伝播されるリクエスト属性の名前。- 導入:
- Servlet 6.1
- 関連事項:
ERROR_REQUEST_URI
処理によりエラーが発生したリクエスト URI がエラーディスパッチ中に伝播されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
ERROR_QUERY_STRING
エラーのディスパッチ中に、処理によってエラーが発生したリクエストのクエリ文字列が伝播されるリクエスト属性の名前。- 導入:
- Servlet 6.1
- 関連事項:
ERROR_SERVLET_NAME
エラーディスパッチ中にエラーが発生したサーブレットの名前が伝播されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
ERROR_STATUS_CODE
エラーディスパッチ中にレスポンスステータスが伝播されるリクエスト属性の名前- 導入:
- Servlet 3.0
- 関連事項:
メソッドの詳細
forward
void forward(ServletRequest request, ServletResponse response) throws ServletException, IOExceptionSE リクエストをサーブレットからサーバー上の別のリソース(サーブレット、JSP ファイル、HTML ファイル)に転送します。このメソッドにより、1 つのサーブレットがリクエストの予備処理を行い、別のリソースがレスポンスを生成できます。getRequestDispatcher()
を介して取得されたRequestDispatcher
の場合、ServletRequest
オブジェクトのパス要素とパラメーターは、ターゲットリソースのパスに一致するように調整されます。forward
は、レスポンスがクライアントにコミットされる前に(レスポンス本文の出力がフラッシュされる前に)呼び出す必要があります。レスポンスがすでにコミットされている場合、このメソッドはIllegalStateException
をスローします。レスポンスバッファー内のコミットされていない出力は、転送の前に自動的にクリアされます。リクエストおよびレスポンスパラメーターは、呼び出しサーブレットのサービスメソッドに渡されたものと同じオブジェクトであるか、ラップする
ServletRequestWrapper
またはServletResponseWrapper
クラスのサブクラスである必要があります。このメソッドは、指定されたリクエストのディスパッチャー型を
DispatcherType.FORWARD
に設定します。- パラメーター:
request
- クライアントがサーブレットに対して行うリクエストを表すServletRequest
オブジェクトresponse
- サーブレットがクライアントに返すレスポンスを表すServletResponse
オブジェクト- 例外:
ServletException
- ターゲットリソースがこの例外をスローした場合IOExceptionSE
- ターゲットリソースがこの例外をスローした場合IllegalStateExceptionSE
- レスポンスがすでにコミットされている場合- 関連事項:
include
void include(ServletRequest request, ServletResponse response) throws ServletException, IOExceptionSE レスポンスにリソース(サーブレット、JSP ページ、HTML ファイル)のコンテンツを含めます。本質的に、このメソッドはプログラムによるサーバー側インクルードを可能にします。ServletResponse
オブジェクトにはパス要素があり、パラメーターは呼び出し元から変更されません。含まれているサーブレットは、レスポンスステータスコードを変更したり、ヘッダーを設定したりできません。変更しようとしても無視されます。リクエストおよびレスポンスパラメーターは、呼び出しサーブレットのサービスメソッドに渡されたものと同じオブジェクトであるか、ラップする
ServletRequestWrapper
またはServletResponseWrapper
クラスのサブクラスである必要があります。このメソッドは、指定されたリクエストのディスパッチャー型を
DispatcherType.INCLUDE
に設定します。- パラメーター:
request
- クライアントのリクエストを含むServletRequest
オブジェクトresponse
- サーブレットのレスポンスを含むServletResponse
オブジェクト- 例外:
ServletException
- 含まれるリソースがこの例外をスローする場合IOExceptionSE
- 含まれるリソースがこの例外をスローする場合- 関連事項: