インターフェース HttpServletResponse
- すべてのスーパーインターフェース:
ServletResponse
- すべての既知の実装クラス:
HttpServletResponseWrapper
public interface HttpServletResponse extends ServletResponse
ServletResponseインターフェースを拡張して、レスポンスを送信する際に HTTP 固有の機能を提供します。例: HTTP ヘッダーと Cookie にアクセスするメソッドがあります。サーブレットコンテナーは
HttpServletResponseオブジェクトを作成し、それを引数としてサーブレットのサービスメソッド(doGet、doPostなど)に渡します。- 作成者:
- Various
- 関連事項:
ServletResponse
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static intSC_ACCEPTEDリクエストが処理のために受け入れられたが、完了しなかったことを示すステータスコード (202)。static intSC_BAD_GATEWAYHTTP サーバーがプロキシまたはゲートウェイとして動作しているときに問い合わせたサーバーから無効なレスポンスを受信したことを示すステータスコード (502)。static intSC_BAD_REQUESTクライアントから送信されたリクエストが構文的に正しくないことを示すステータスコード (400)。static intSC_CONFLICTリソースの現在の状態と競合するため、リクエストを完了できなかったことを示すステータスコード (409)。static intSC_CONTINUEクライアントが続行できることを示すステータスコード (100)。static intSC_CREATEDリクエストが成功し、サーバー上に新しいリソースを作成したことを示すステータスコード (201)。static intSC_EXPECTATION_FAILEDサーバーが Expect リクエストヘッダーで指定された期待に応えられなかったことを示すステータスコード (417)。static intSC_FORBIDDENサーバーがリクエストを理解したが、それを実行することを拒否したことを示すステータスコード (403)。static intSC_FOUNDリソースが一時的に別の URI にあることを示すステータスコード (302)。static intSC_GATEWAY_TIMEOUTゲートウェイまたはプロキシとして機能している間に、サーバーがアップストリームサーバーからタイムリーなレスポンスを受信しなかったことを示すステータスコード (504)。static intSC_GONEリソースがサーバーで使用できなくなり、転送アドレスが不明であることを示すステータスコード (410)。static intSC_HTTP_VERSION_NOT_SUPPORTEDサーバーがリクエストメッセージで使用された HTTP プロトコルバージョンをサポートしていないか、サポートを拒否していることを示すステータスコード (505)。static intSC_INTERNAL_SERVER_ERRORHTTP サーバー内部のエラーを示すステータスコード (500)。リクエストの実行を妨げました。static intSC_LENGTH_REQUIRED定義されたContent-Lengthなしではリクエストを処理できないことを示すステータスコード (411)。static intSC_METHOD_NOT_ALLOWEDRequest-Lineで指定されたメソッドがRequest-URIで識別されるリソースに対して許可されていないことを示すステータスコード (405)。static intSC_MOVED_PERMANENTLYリソースが永続的に新しい場所に移動し、今後の参照ではリクエストで新しい URI を使用する必要があることを示すステータスコード (301)。static intSC_MOVED_TEMPORARILYリソースが一時的に別の場所に移動したが、今後の参照ではリソースにアクセスするために元の URI を使用する必要があることを示すステータスコード (302)。static intSC_MULTIPLE_CHOICESリクエストされたリソースが、それぞれ固有の場所を持つ表現のセットのいずれかに対応することを示すステータスコード (300)。static intSC_NO_CONTENTリクエストは成功したが、返す新しい情報がないことを示すステータスコード (204)。static intSC_NON_AUTHORITATIVE_INFORMATIONクライアントから提示されたメタ情報がサーバーからのものではないことを示すステータスコード (203)。static intSC_NOT_ACCEPTABLEリクエストで識別されたリソースが、リクエストで送信された受け入れヘッダーに従って受け入れられないコンテンツ特性を持つレスポンスエンティティを生成できるだけであることを示すステータスコード (406)。static intSC_NOT_FOUNDリクエストされたリソースが利用できないことを示すステータスコード (404)。static intSC_NOT_IMPLEMENTEDHTTP サーバーがリクエストを満たすために必要な機能をサポートしていないことを示すステータスコード (501)。static intSC_NOT_MODIFIED条件付き GET 操作で、リソースが利用可能であり、変更されていないことが検出されたことを示すステータスコード (304)。static intSC_OKリクエストが正常に成功したことを示すステータスコード (200)。static intSC_PARTIAL_CONTENTサーバーがリソースに対する部分的な GET リクエストを実行したことを示すステータスコード (206)。static intSC_PAYMENT_REQUIREDステータスコード (402) は将来の使用のために予約されています。static intSC_PRECONDITION_FAILED1 つ以上のリクエストヘッダーフィールドで指定された前提条件がサーバーでテストされたときに false と評価されたことを示すステータスコード (412)。static intSC_PROXY_AUTHENTICATION_REQUIREDクライアントが最初にプロキシで自身を認証する必要があることを示すステータスコード (407)。static intSC_REQUEST_ENTITY_TOO_LARGEリクエストエンティティがサーバーが処理できる、または処理できるよりも大きいため、サーバーがリクエストの処理を拒否していることを示すステータスコード (413)。static intSC_REQUEST_TIMEOUTサーバーが待機する準備ができている時間内にクライアントがリクエストを生成しなかったことを示すステータスコード (408)。static intSC_REQUEST_URI_TOO_LONGRequest-URIがサーバーが解釈するよりも長いため、サーバーがリクエストの処理を拒否していることを示すステータスコード (414)。static intSC_REQUESTED_RANGE_NOT_SATISFIABLEサーバーがリクエストされたバイト範囲を提供できないことを示すステータスコード (416)。static intSC_RESET_CONTENTエージェントは、リクエストが送信される原因となったドキュメントビューをリセットする必要があることを示すステータスコード (205)。static intSC_SEE_OTHERリクエストへのレスポンスが別の URI で見つかることを示すステータスコード (303)。static intSC_SERVICE_UNAVAILABLEHTTP サーバーが一時的にオーバーロードになっており、リクエストを処理できないことを示すステータスコード (503)。static intSC_SWITCHING_PROTOCOLSサーバーが Upgrade ヘッダーに従ってプロトコルを切り替えていることを示すステータスコード (101)。static intSC_TEMPORARY_REDIRECTリクエストされたリソースが一時的に別の URI にあることを示すステータスコード (307)。static intSC_UNAUTHORIZEDリクエストに HTTP 認証が必要であることを示すステータスコード (401)。static intSC_UNSUPPORTED_MEDIA_TYPEリクエストのエンティティが、リクエストされたメソッドのリクエストされたリソースでサポートされていない形式であるため、サーバーがリクエストのサービスを拒否していることを示すステータスコード (415)。static intSC_USE_PROXYLocationフィールドで指定されたプロキシを介して、リクエストされたリソースにアクセスする必要があることを示すステータスコード (305)。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド デフォルトメソッド 修飾子と型 メソッド 説明 voidaddCookie(Cookie cookie)指定した Cookie をレスポンスに追加します。voidaddDateHeader(StringSE name, long date)指定された名前と日付値を持つレスポンスヘッダーを追加します。voidaddHeader(StringSE name, StringSE value)指定された名前と値でレスポンスヘッダーを追加します。voidaddIntHeader(StringSE name, int value)指定された名前と整数値を持つレスポンスヘッダーを追加します。booleancontainsHeader(StringSE name)名前付きレスポンスヘッダーがすでに設定されているかどうかを示すブール値を返します。StringSEencodeRedirectURL(StringSE url)指定された URL をsendRedirectメソッドで使用するためにエンコードします。エンコードが不要な場合は、URL を変更せずに返します。StringSEencodeURL(StringSE url)セッション ID を含めることにより、指定された URL をエンコードします。エンコードが不要な場合は、URL を変更せずに返します。StringSEgetHeader(StringSE name)指定された名前のレスポンスヘッダーの値を取得します。CollectionSE<StringSE>getHeaderNames()このレスポンスのヘッダーの名前を取得します。CollectionSE<StringSE>getHeaders(StringSE name)指定された名前のレスポンスヘッダーの値を取得します。intgetStatus()このレスポンスの現在のステータスコードを取得します。default SupplierSE<MapSE<StringSE,StringSE>>getTrailerFields()トレーラーヘッダーのサプライヤーを取得します。voidsendError(int sc)指定されたステータスコードを使用してエラーレスポンスをクライアントに送信し、バッファをクリアします。voidsendError(int sc, StringSE msg)指定されたステータスを使用してエラーレスポンスをクライアントに送信し、バッファをクリアします。voidsendRedirect(StringSE location)指定されたリダイレクトロケーション URL を使用して一時的なリダイレクトレスポンスをクライアントに送信し、バッファーをクリアします。voidsetDateHeader(StringSE name, long date)指定された名前と日付値でレスポンスヘッダーを設定します。voidsetHeader(StringSE name, StringSE value)指定された名前と値でレスポンスヘッダーを設定します。voidsetIntHeader(StringSE name, int value)指定された名前と整数値でレスポンスヘッダーを設定します。voidsetStatus(int sc)このレスポンスのステータスコードを設定します。default voidsetTrailerFields(SupplierSE<MapSE<StringSE,StringSE>> supplier)トレーラーヘッダーのサプライヤーを設定します。インターフェース jakarta.servlet.ServletResponse から継承されたメソッド
flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getOutputStream, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale
フィールドの詳細
SC_CONTINUE
static final int SC_CONTINUE
クライアントが続行できることを示すステータスコード (100)。- 関連事項:
- 定数フィールド値
SC_SWITCHING_PROTOCOLS
static final int SC_SWITCHING_PROTOCOLS
サーバーが Upgrade ヘッダーに従ってプロトコルを切り替えていることを示すステータスコード (101)。- 関連事項:
- 定数フィールド値
SC_OK
static final int SC_OK
リクエストが正常に成功したことを示すステータスコード (200)。- 関連事項:
- 定数フィールド値
SC_CREATED
static final int SC_CREATED
リクエストが成功し、サーバー上に新しいリソースを作成したことを示すステータスコード (201)。- 関連事項:
- 定数フィールド値
SC_ACCEPTED
static final int SC_ACCEPTED
リクエストが処理のために受け入れられたが、完了しなかったことを示すステータスコード (202)。- 関連事項:
- 定数フィールド値
SC_NON_AUTHORITATIVE_INFORMATION
static final int SC_NON_AUTHORITATIVE_INFORMATION
クライアントから提示されたメタ情報がサーバーからのものではないことを示すステータスコード (203)。- 関連事項:
- 定数フィールド値
SC_NO_CONTENT
static final int SC_NO_CONTENT
リクエストは成功したが、返す新しい情報がないことを示すステータスコード (204)。- 関連事項:
- 定数フィールド値
SC_RESET_CONTENT
static final int SC_RESET_CONTENT
エージェントは、リクエストが送信される原因となったドキュメントビューをリセットする必要があることを示すステータスコード (205)。- 関連事項:
- 定数フィールド値
SC_PARTIAL_CONTENT
static final int SC_PARTIAL_CONTENT
サーバーがリソースに対する部分的な GET リクエストを実行したことを示すステータスコード (206)。- 関連事項:
- 定数フィールド値
SC_MULTIPLE_CHOICES
static final int SC_MULTIPLE_CHOICES
リクエストされたリソースが、それぞれ固有の場所を持つ表現のセットのいずれかに対応することを示すステータスコード (300)。- 関連事項:
- 定数フィールド値
SC_MOVED_PERMANENTLY
static final int SC_MOVED_PERMANENTLY
リソースが永続的に新しい場所に移動し、今後の参照ではリクエストで新しい URI を使用する必要があることを示すステータスコード (301)。- 関連事項:
- 定数フィールド値
SC_MOVED_TEMPORARILY
static final int SC_MOVED_TEMPORARILY
リソースが一時的に別の場所に移動したが、今後の参照ではリソースにアクセスするために元の URI を使用する必要があることを示すステータスコード (302)。この定義は、後方互換性のために保持されています。SC_FOUND が優先される定義になりました。- 関連事項:
- 定数フィールド値
SC_FOUND
static final int SC_FOUND
リソースが一時的に別の URI にあることを示すステータスコード (302)。リダイレクトは時々変更される可能性があるため、クライアントは今後のリクエストに Request-URI を引き続き使用する必要があります。(HTTP/1.1)ステータスコード (302) を表すには、この変数を使用することをお勧めします。- 関連事項:
- 定数フィールド値
SC_SEE_OTHER
static final int SC_SEE_OTHER
リクエストへのレスポンスが別の URI で見つかることを示すステータスコード (303)。- 関連事項:
- 定数フィールド値
SC_NOT_MODIFIED
static final int SC_NOT_MODIFIED
条件付き GET 操作で、リソースが利用可能であり、変更されていないことが検出されたことを示すステータスコード (304)。- 関連事項:
- 定数フィールド値
SC_USE_PROXY
static final int SC_USE_PROXY
Locationフィールドで指定されたプロキシを介して、リクエストされたリソースにアクセスする必要があることを示すステータスコード (305)。- 関連事項:
- 定数フィールド値
SC_TEMPORARY_REDIRECT
static final int SC_TEMPORARY_REDIRECT
リクエストされたリソースが一時的に別の URI にあることを示すステータスコード (307)。一時 URI は、レスポンスのLocationフィールドによって与えられるべきです(SHOULD)。- 関連事項:
- 定数フィールド値
SC_BAD_REQUEST
static final int SC_BAD_REQUEST
クライアントから送信されたリクエストが構文的に正しくないことを示すステータスコード (400)。- 関連事項:
- 定数フィールド値
SC_UNAUTHORIZED
static final int SC_UNAUTHORIZED
リクエストに HTTP 認証が必要であることを示すステータスコード (401)。- 関連事項:
- 定数フィールド値
SC_PAYMENT_REQUIRED
static final int SC_PAYMENT_REQUIRED
ステータスコード (402) は将来の使用のために予約されています。- 関連事項:
- 定数フィールド値
SC_FORBIDDEN
static final int SC_FORBIDDEN
サーバーがリクエストを理解したが、それを実行することを拒否したことを示すステータスコード (403)。- 関連事項:
- 定数フィールド値
SC_NOT_FOUND
static final int SC_NOT_FOUND
リクエストされたリソースが利用できないことを示すステータスコード (404)。- 関連事項:
- 定数フィールド値
SC_METHOD_NOT_ALLOWED
static final int SC_METHOD_NOT_ALLOWED
Request-Lineで指定されたメソッドがRequest-URIで識別されるリソースに対して許可されていないことを示すステータスコード (405)。- 関連事項:
- 定数フィールド値
SC_NOT_ACCEPTABLE
static final int SC_NOT_ACCEPTABLE
リクエストで識別されたリソースが、リクエストで送信された受け入れヘッダーに従って受け入れられないコンテンツ特性を持つレスポンスエンティティを生成できるだけであることを示すステータスコード (406)。- 関連事項:
- 定数フィールド値
SC_PROXY_AUTHENTICATION_REQUIRED
static final int SC_PROXY_AUTHENTICATION_REQUIRED
クライアントが最初にプロキシで自身を認証する必要があることを示すステータスコード (407)。- 関連事項:
- 定数フィールド値
SC_REQUEST_TIMEOUT
static final int SC_REQUEST_TIMEOUT
サーバーが待機する準備ができている時間内にクライアントがリクエストを生成しなかったことを示すステータスコード (408)。- 関連事項:
- 定数フィールド値
SC_CONFLICT
static final int SC_CONFLICT
リソースの現在の状態と競合するため、リクエストを完了できなかったことを示すステータスコード (409)。- 関連事項:
- 定数フィールド値
SC_GONE
static final int SC_GONE
リソースがサーバーで使用できなくなり、転送アドレスが不明であることを示すステータスコード (410)。この状態は永久的なものと見なすべきです。- 関連事項:
- 定数フィールド値
SC_LENGTH_REQUIRED
static final int SC_LENGTH_REQUIRED
定義されたContent-Lengthなしではリクエストを処理できないことを示すステータスコード (411)。- 関連事項:
- 定数フィールド値
SC_PRECONDITION_FAILED
static final int SC_PRECONDITION_FAILED
1 つ以上のリクエストヘッダーフィールドで指定された前提条件がサーバーでテストされたときに false と評価されたことを示すステータスコード (412)。- 関連事項:
- 定数フィールド値
SC_REQUEST_ENTITY_TOO_LARGE
static final int SC_REQUEST_ENTITY_TOO_LARGE
リクエストエンティティがサーバーが処理できる、または処理できるよりも大きいため、サーバーがリクエストの処理を拒否していることを示すステータスコード (413)。- 関連事項:
- 定数フィールド値
SC_REQUEST_URI_TOO_LONG
static final int SC_REQUEST_URI_TOO_LONG
Request-URIがサーバーが解釈するよりも長いため、サーバーがリクエストの処理を拒否していることを示すステータスコード (414)。- 関連事項:
- 定数フィールド値
SC_UNSUPPORTED_MEDIA_TYPE
static final int SC_UNSUPPORTED_MEDIA_TYPE
リクエストのエンティティが、リクエストされたメソッドのリクエストされたリソースでサポートされていない形式であるため、サーバーがリクエストのサービスを拒否していることを示すステータスコード (415)。- 関連事項:
- 定数フィールド値
SC_REQUESTED_RANGE_NOT_SATISFIABLE
static final int SC_REQUESTED_RANGE_NOT_SATISFIABLE
サーバーがリクエストされたバイト範囲を提供できないことを示すステータスコード (416)。- 関連事項:
- 定数フィールド値
SC_EXPECTATION_FAILED
static final int SC_EXPECTATION_FAILED
サーバーが Expect リクエストヘッダーで指定された期待に応えられなかったことを示すステータスコード (417)。- 関連事項:
- 定数フィールド値
SC_INTERNAL_SERVER_ERROR
static final int SC_INTERNAL_SERVER_ERROR
HTTP サーバー内部のエラーを示すステータスコード (500)。リクエストの実行を妨げました。- 関連事項:
- 定数フィールド値
SC_NOT_IMPLEMENTED
static final int SC_NOT_IMPLEMENTED
HTTP サーバーがリクエストを満たすために必要な機能をサポートしていないことを示すステータスコード (501)。- 関連事項:
- 定数フィールド値
SC_BAD_GATEWAY
static final int SC_BAD_GATEWAY
HTTP サーバーがプロキシまたはゲートウェイとして動作しているときに問い合わせたサーバーから無効なレスポンスを受信したことを示すステータスコード (502)。- 関連事項:
- 定数フィールド値
SC_SERVICE_UNAVAILABLE
static final int SC_SERVICE_UNAVAILABLE
HTTP サーバーが一時的にオーバーロードになっており、リクエストを処理できないことを示すステータスコード (503)。- 関連事項:
- 定数フィールド値
SC_GATEWAY_TIMEOUT
static final int SC_GATEWAY_TIMEOUT
ゲートウェイまたはプロキシとして機能している間に、サーバーがアップストリームサーバーからタイムリーなレスポンスを受信しなかったことを示すステータスコード (504)。- 関連事項:
- 定数フィールド値
SC_HTTP_VERSION_NOT_SUPPORTED
static final int SC_HTTP_VERSION_NOT_SUPPORTED
サーバーがリクエストメッセージで使用された HTTP プロトコルバージョンをサポートしていないか、サポートを拒否していることを示すステータスコード (505)。- 関連事項:
- 定数フィールド値
メソッドの詳細
addCookie
void addCookie(Cookie cookie)
指定した Cookie をレスポンスに追加します。このメソッドを複数回呼び出して、複数の Cookie を設定できます。- パラメーター:
cookie- Cookie をクライアントに返す
containsHeader
boolean containsHeader(StringSE name)
名前付きレスポンスヘッダーがすでに設定されているかどうかを示すブール値を返します。- パラメーター:
name- ヘッダー名- 戻り値:
- 名前付きレスポンスヘッダーがすでに設定されている場合は
true。それ以外の場合はfalse
encodeURL
StringSE encodeURL(StringSE url)
セッション ID を含めることにより、指定された URL をエンコードします。エンコードが不要な場合は、URL を変更せずに返します。このメソッドの実装には、URL でセッション ID をエンコードする必要があるかどうかを判断するロジックが含まれています。例: ブラウザーが Cookie をサポートしている場合、またはセッショントラッキングがオフになっている場合、URL エンコードは不要です。堅牢なセッショントラッキングを行うには、サーブレットが発行するすべての URL をこのメソッドで実行する必要があります。そうしないと、Cookie をサポートしないブラウザーで URL 書き換えを使用できません。
URL が相対である場合、常に現在の HttpServletRequest に対して相対的です。
- パラメーター:
url- エンコードされる URL。- 戻り値:
- エンコードが必要な場合はエンコードされた URL。それ以外の場合は未変更の URL。
- 例外:
IllegalArgumentExceptionSE- URL が有効でない場合
encodeRedirectURL
StringSE encodeRedirectURL(StringSE url)
指定された URL をsendRedirectメソッドで使用するためにエンコードします。エンコードが不要な場合は、URL を変更せずに返します。このメソッドの実装には、URL でセッション ID をエンコードする必要があるかどうかを判断するロジックが含まれています。例: ブラウザーが Cookie をサポートしている場合、またはセッショントラッキングがオフになっている場合、URL エンコードは不要です。この決定を行うための規則は、通常のリンクをエンコードするかどうかを決定するために使用される規則とは異なる可能性があるため、このメソッドはencodeURLメソッドから分離されています。HttpServletResponse.sendRedirectメソッドに送信されるすべての URL は、このメソッドを介して実行する必要があります。そうしないと、Cookie をサポートしないブラウザーで URL 書き換えを使用できません。URL が相対である場合、常に現在の HttpServletRequest に対して相対的です。
- パラメーター:
url- エンコードされる URL。- 戻り値:
- エンコードが必要な場合はエンコードされた URL。それ以外の場合は未変更の URL。
- 例外:
IllegalArgumentExceptionSE- URL が有効でない場合- 関連事項:
sendRedirect(java.lang.String)
sendError
void sendError(int sc, StringSE msg) throws IOExceptionSE指定されたステータスを使用してクライアントにエラーレスポンスを送信し、バッファをクリアします。サーバーはデフォルトで、指定されたメッセージを含む HTML 形式のサーバーエラーページのように見えるレスポンスを作成し、コンテンツ型を "text/html" に設定します。呼び出し元は、現在のレスポンスのエンコードとコンテンツ型に関して安全であることを確認するために、メッセージをエスケープまたは再エンコードする責任を負いません。安全性のこの側面は、メッセージを含むエラーページを生成するため、コンテナーの責任です。サーバーは Cookie を保持し、エラーページを有効なレスポンスとして提供するために必要なヘッダーをクリアまたは更新する場合があります。
渡されたステータスコードに対応する Web アプリケーションのエラーページ宣言が行われた場合、提案された msg パラメーターよりも優先して返され、msg パラメーターは無視されます。
レスポンスがすでにコミットされている場合、このメソッドは IllegalStateException をスローします。このメソッドを使用した後、レスポンスはコミットされたと見なされるべきであり、書き込まれるべきではありません。
- パラメーター:
sc- エラー状態コードmsg- 説明的なメッセージ- 例外:
IOExceptionSE- 入力または出力の例外が発生した場合IllegalStateExceptionSE- レスポンスがコミットされていた場合
sendError
void sendError(int sc) throws IOExceptionSE指定されたステータスコードを使用してエラーレスポンスをクライアントに送信し、バッファをクリアします。サーバーは Cookie を保持し、エラーページを有効なレスポンスとして提供するために必要なヘッダーをクリアまたは更新する場合があります。渡されたステータスコードに対応する Web アプリケーションのエラーページ宣言が行われた場合、エラーページが返されます。レスポンスがすでにコミットされている場合、このメソッドは IllegalStateException をスローします。このメソッドを使用した後、レスポンスはコミットされたと見なされるべきであり、書き込まれるべきではありません。
- パラメーター:
sc- エラー状態コード- 例外:
IOExceptionSE- 入力または出力の例外が発生した場合IllegalStateExceptionSE- このメソッド呼び出しの前にレスポンスがコミットされた場合
sendRedirect
void sendRedirect(StringSE location) throws IOExceptionSE
指定されたリダイレクトロケーション URL を使用して一時的なリダイレクトレスポンスをクライアントに送信し、バッファーをクリアします。バッファは、このメソッドによって設定されたデータに置き換えられます。このメソッドを呼び出すと、ステータスコードがSC_FOUND302(Found)に設定されます。このメソッドは相対 URL を受け入れることができます。サーブレットコンテナーは、レスポンスをクライアントに送信する前に相対 URL を絶対 URL に変換する必要があります。場所が先頭に "/" のない相対的な場所である場合、コンテナーは現在のリクエスト URI に相対的であると解釈します。ロケーションが先頭に "/" を付けた相対位置である場合、コンテナーはサーブレットコンテナールートに対する相対位置として解釈します。場所が 2 つの先頭 "/" で相対的な場合、コンテナーはそれをネットワークパス参照として解釈します(RFC 3986: ユニフォームリソース識別子 (URI): 汎用構文のセクション 4.2「相対参照」を参照)。レスポンスがすでにコミットされている場合、このメソッドは IllegalStateException をスローします。このメソッドを使用した後、レスポンスはコミットされたと見なされるべきであり、書き込まれるべきではありません。
- パラメーター:
location- リダイレクト場所の URL- 例外:
IOExceptionSE- 入力または出力の例外が発生した場合IllegalStateExceptionSE- レスポンスがコミットされた場合、または部分的な URL が指定されていて、有効な URL に変換できない場合
setDateHeader
void setDateHeader(StringSE name, long date)
指定された名前と日付値でレスポンスヘッダーを設定します。日付は、エポックからのミリ秒で指定されます。ヘッダーがすでに設定されている場合、新しい値は以前の値を上書きします。containsHeaderメソッドは、値を設定する前にヘッダーの存在をテストするために使用できます。- パラメーター:
name- 設定するヘッダーの名前date- 割り当てられた日付値- 関連事項:
containsHeader(java.lang.String),addDateHeader(java.lang.String, long)
addDateHeader
void addDateHeader(StringSE name, long date)
指定された名前と日付値を持つレスポンスヘッダーを追加します。日付は、エポックからのミリ秒で指定されます。このメソッドにより、レスポンスヘッダーに複数の値を設定できます。- パラメーター:
name- 設定するヘッダーの名前date- 追加の日付値- 関連事項:
setDateHeader(java.lang.String, long)
setHeader
void setHeader(StringSE name, StringSE value)
指定された名前と値でレスポンスヘッダーを設定します。ヘッダーがすでに設定されている場合、新しい値は以前の値を上書きします。containsHeaderメソッドは、値を設定する前にヘッダーの存在をテストするために使用できます。- パラメーター:
name- ヘッダーの名前value- ヘッダー値にオクテット文字列が含まれる場合、RFC 2047 に従ってエンコードする必要があります (http://www.ietf.org/rfc/rfc2047.txt)- 関連事項:
containsHeader(java.lang.String),addHeader(java.lang.String, java.lang.String)
addHeader
void addHeader(StringSE name, StringSE value)
指定された名前と値でレスポンスヘッダーを追加します。このメソッドにより、レスポンスヘッダーに複数の値を設定できます。- パラメーター:
name- ヘッダーの名前value- 追加のヘッダー値オクテット文字列を含む場合、RFC 2047 に従ってエンコードする必要があります (http://www.ietf.org/rfc/rfc2047.txt)- 関連事項:
setHeader(java.lang.String, java.lang.String)
setIntHeader
void setIntHeader(StringSE name, int value)
指定された名前と整数値でレスポンスヘッダーを設定します。ヘッダーがすでに設定されている場合、新しい値は以前の値を上書きします。containsHeaderメソッドは、値を設定する前にヘッダーの存在をテストするために使用できます。- パラメーター:
name- ヘッダーの名前value- 割り当てられた整数値- 関連事項:
containsHeader(java.lang.String),addIntHeader(java.lang.String, int)
addIntHeader
void addIntHeader(StringSE name, int value)
指定された名前と整数値を持つレスポンスヘッダーを追加します。このメソッドにより、レスポンスヘッダーに複数の値を設定できます。- パラメーター:
name- ヘッダーの名前value- 割り当てられた整数値- 関連事項:
setIntHeader(java.lang.String, int)
setStatus
void setStatus(int sc)
このレスポンスのステータスコードを設定します。このメソッドは、エラーがない場合(たとえば、SC_OK または SC_MOVED_TEMPORARILY ステータスコード)に戻りステータスコードを設定するために使用されます。
このメソッドを使用してエラーコードを設定すると、コンテナーのエラーページメカニズムはトリガーされません。エラーが発生し、呼び出し元が Web アプリケーションで定義されたエラーページを呼び出す場合は、代わりに
sendError(int, java.lang.String)を使用する必要があります。このメソッドは、Cookie およびその他のレスポンスヘッダーを保持します。
有効なステータスコードは、2XX、3XX、4XX、5XX の範囲のものです。他のステータスコードは、コンテナー固有として扱われます。
- パラメーター:
sc- ステータスコード- 関連事項:
sendError(int, java.lang.String)
getStatus
int getStatus()
このレスポンスの現在のステータスコードを取得します。- 戻り値:
- このレスポンスの現在のステータスコード
- 導入:
- Servlet 3.0
getHeader
StringSE getHeader(StringSE name)
指定された名前のレスポンスヘッダーの値を取得します。指定された名前のレスポンスヘッダーが存在し、複数の値が含まれている場合、最初に追加された値が返されます。
このメソッドは、それぞれ
setHeader(java.lang.String, java.lang.String)、addHeader(java.lang.String, java.lang.String)、setDateHeader(java.lang.String, long)、addDateHeader(java.lang.String, long)、setIntHeader(java.lang.String, int)、addIntHeader(java.lang.String, int)を介して設定または追加されたレスポンスヘッダーのみを考慮します。- パラメーター:
name- 値を返すレスポンスヘッダーの名前- 戻り値:
- 指定された名前のレスポンスヘッダーの値、またはこのレスポンスに指定された名前のヘッダーが設定されていない場合は null
- 導入:
- Servlet 3.0
getHeaders
CollectionSE<StringSE> getHeaders(StringSE name)
指定された名前のレスポンスヘッダーの値を取得します。このメソッドは、それぞれ
setHeader(java.lang.String, java.lang.String)、addHeader(java.lang.String, java.lang.String)、setDateHeader(java.lang.String, long)、addDateHeader(java.lang.String, long)、setIntHeader(java.lang.String, int)、addIntHeader(java.lang.String, int)を介して設定または追加されたレスポンスヘッダーのみを考慮します。返された
Collectionに対する変更は、このHttpServletResponseに影響してはなりません。- パラメーター:
name- 値が返されるレスポンスヘッダーの名前- 戻り値:
- 指定された名前を持つレスポンスヘッダーの値の(空の場合もある)
Collection - 導入:
- Servlet 3.0
getHeaderNames
CollectionSE<StringSE> getHeaderNames()
このレスポンスのヘッダーの名前を取得します。このメソッドは、それぞれ
setHeader(java.lang.String, java.lang.String)、addHeader(java.lang.String, java.lang.String)、setDateHeader(java.lang.String, long)、addDateHeader(java.lang.String, long)、setIntHeader(java.lang.String, int)、addIntHeader(java.lang.String, int)を介して設定または追加されたレスポンスヘッダーのみを考慮します。返された
Collectionに対する変更は、このHttpServletResponseに影響してはなりません。- 戻り値:
- このレスポンスのヘッダーの名前の(空の場合もある)
Collection - 導入:
- Servlet 3.0
setTrailerFields
default void setTrailerFields(SupplierSE<MapSE<StringSE,StringSE>> supplier)
トレーラーヘッダーのサプライヤーを設定します。トレーラーヘッダーフィールド値は、カンマ区切りリストとして定義されます(RFC 7230 のセクション 3.2.2 およびセクション 4.1.2 を参照)。
サプライヤーは、レスポンスコンテンツが完了するスレッド / 呼び出しの範囲内で呼び出されます。通常、これは、出力ストリームまたはライターで close() を呼び出すスレッドになります。
RFC 7230 のセクション 4.1.2 の規定に反して実行されるトレーラーは無視されます。
RFC では、指定された Map に含まれるすべてのキーの名前が、"Trailer" レスポンスヘッダーの値であるコンマ区切りリストに含まれている必要があります。アプリケーションは、この要件が満たされていることを確認する責任があります。そうしないと、相互運用性の障害につながる可能性があります。
- パラメーター:
supplier- トレーラーヘッダーのサプライヤー- 例外:
IllegalStateExceptionSE- レスポンスがコミットされた後に呼び出されるか、リクエストでトレーラがサポートされていない場合、たとえば、基になるプロトコルが HTTP 1.0 であるか、レスポンスが HTTP 1.1 のチャンクエンコーディングではありません。- 導入:
- Servlet 4.0
getTrailerFields
default SupplierSE<MapSE<StringSE,StringSE>> getTrailerFields()
トレーラーヘッダーのサプライヤーを取得します。- 戻り値:
- トレーラーヘッダーの
Supplier - 導入:
- Servlet 4.0