|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
応答の送信時に HTTP 固有の機能を提供するために、ServletResponse インタフェースを拡張します。たとえば、HTTP ヘッダとクッキーにアクセスするメソッド群があります。
サーブレットコンテナは、HttpServletResponse オブジェクトを作成し、それを doGet、doPost などのサーブレットのサービスメソッドへ引数として渡します。
ServletResponse| フィールドの概要 | |
static int |
SC_ACCEPTED
要求が受け付けられたが、処理が完了しなかったことを示す状態コード (202) です。 |
static int |
SC_BAD_GATEWAY
HTTP サーバが、プロキシまたはゲートウェイとして動作しているときに、問い合わせたサーバから無効な応答を受け取ったことを示す状態コード (502) です。 |
static int |
SC_BAD_REQUEST
クライアントによって送信された要求が、構文的に誤っていることを示す状態コード (400) です。 |
static int |
SC_CONFLICT
現在のリソースの状態と競合していることが原因で、要求が完了できなかったことを示す状態コード (409) です。 |
static int |
SC_CONTINUE
クライアントが続行できることを示す状態コード (100) です。 |
static int |
SC_CREATED
要求が正常に終了して、サーバ上に新しいリソースが作成されたことを示す状態コード (201) です。 |
static int |
SC_EXPECTATION_FAILED
サーバが、Expect 要求ヘッダに指定された条件を満たすことができなかったことを示す状態コード (417) です。 |
static int |
SC_FORBIDDEN
サーバが要求を理解したが、それを実行することを拒否したことを示す状態コード (403) です。 |
static int |
SC_GATEWAY_TIMEOUT
サーバが、プロキシまたはゲートウェイとして動作しているときに、上流のサーバから時間内に応答を受け取らなかったことを示す状態コード (504) です。 |
static int |
SC_GONE
リソースがサーバでもはや利用できず、転送先アドレスも不明なことを示す状態コード (410) です。 |
static int |
SC_HTTP_VERSION_NOT_SUPPORTED
サーバが、要求メッセージ内で使用された HTTP プロトコルバージョンをサポートしないか、サポートを拒否していることを示す状態コード (505) です。 |
static int |
SC_INTERNAL_SERVER_ERROR
要求の完了を妨げるようなエラーが HTTP サーバ内部で発生したことを示す状態コード (500) です。 |
static int |
SC_LENGTH_REQUIRED
Content-Length が設定されていないと、要求を処理できないことを示す状態コード (411) です。 |
static int |
SC_METHOD_NOT_ALLOWED
Request-Line 内に指定されたメソッドが、Request-URI によって識別されるリソースに対して許可されていないことを示す状態コード (405) です。 |
static int |
SC_MOVED_PERMANENTLY
リソースが永久に新しい場所に移動し、将来の参照では要求に新しい URI を使用する必要があることを示す状態コード (301) です。 |
static int |
SC_MOVED_TEMPORARILY
リソースが一時的に別の場所に移動しているが、将来の参照でリソースにアクセスするには、引き続き元の URI を使用する必要があることを示す状態コード (302) です。 |
static int |
SC_MULTIPLE_CHOICES
要求されたリソースが、指定された場所に対応している表現の集合のうちのどれにでも対応することを示す状態コード (300) です。 |
static int |
SC_NO_CONTENT
要求が正常に終了したが、返すべき新規情報がなかったことを示す状態コード (204) です。 |
static int |
SC_NON_AUTHORITATIVE_INFORMATION
クライアントから与えられたメタ情報が、サーバから発せられたものでないことを示す状態コード (203) です。 |
static int |
SC_NOT_ACCEPTABLE
要求が指定するリソースは、要求内で指定されている Accept ヘッダの条件を満たすコンテンツを持つ応答を生成できないことを示す状態コード (406) です。 |
static int |
SC_NOT_FOUND
要求されたリソースが利用不能であることを示す状態コード (404) です。 |
static int |
SC_NOT_IMPLEMENTED
HTTP サーバが、要求を満たすために必要な機能をサポートしていないことを示す状態コード (501) です。 |
static int |
SC_NOT_MODIFIED
リソースが利用可能で変更されていないことを条件付き GET 操作が検出したことを示す状態コード (304) です。 |
static int |
SC_OK
要求が正常に終了したことを示す状態コード (200) です。 |
static int |
SC_PARTIAL_CONTENT
サーバがリソースに対する部分的な GET 要求を完了したことを示す状態コード (206) です。 |
static int |
SC_PAYMENT_REQUIRED
将来の使用のために予約されている状態コード (402) です。 |
static int |
SC_PRECONDITION_FAILED
要求ヘッダのフィールドに指定された前提条件のうち、少なくとも 1 つが、サーバでテストされたときに false と評価されたことを示す状態コード (412) です。 |
static int |
SC_PROXY_AUTHENTICATION_REQUIRED
クライアントプロキシに対して、まず自身を認証する必要があることを示す状態コード (407) です。 |
static int |
SC_REQUEST_ENTITY_TOO_LARGE
要求エンティティが、サーバが処理できるサイズよりも大きいため、サーバが要求の処理を拒否していることを示す状態コード (413) です。 |
static int |
SC_REQUEST_TIMEOUT
サーバが待機するように設定された時間内に、クライアントが要求を作成しなかったことを示す状態コード (408) です。 |
static int |
SC_REQUEST_URI_TOO_LONG
Request-URI が、サーバが解釈できるサイズよりも長いため、サーバが要求のサービスを拒否していることを示す状態コード (414) です。 |
static int |
SC_REQUESTED_RANGE_NOT_SATISFIABLE
サーバが、要求されたバイト範囲をサービスできないことを示す状態コード (416) です。 |
static int |
SC_RESET_CONTENT
要求の送信元となったドキュメントの表示を、エージェントがリセットする必要があることを示す状態コード (205) です。 |
static int |
SC_SEE_OTHER
要求に対する応答が、異なる URI にあることを示す状態コード (303) です。 |
static int |
SC_SERVICE_UNAVAILABLE
HTTP サーバが一時的に過負荷になり、要求を処理できないことを示す状態コード (503) です。 |
static int |
SC_SWITCHING_PROTOCOLS
サーバが Upgrade ヘッダに従ってプロトコルを切り替えていることを示す状態コード (101) です。 |
static int |
SC_TEMPORARY_REDIRECT
要求されたリソースが、一時的に異なる URI にあることを示す状態コード (307) です。 |
static int |
SC_UNAUTHORIZED
要求には HTTP 認証が必要なことを示す状態コード (401) です。 |
static int |
SC_UNSUPPORTED_MEDIA_TYPE
要求のエンティティが、要求されたメソッド用に要求されたリソースではサポートされない形式であるため、サーバが要求のサービスを拒否していることを示す状態コード (415) です。 |
static int |
SC_USE_PROXY
要求されたリソースは、 Location フィールドに指定されたプロキシ経由で処理される必要があることを示す状態コード (305) です。 |
| メソッドの概要 | |
void |
addCookie(Cookie cookie)
指定されたクッキーを応答に追加します。 |
void |
addDateHeader(java.lang.String name,
long date)
指定された名前と日付の値を持つ応答ヘッダを追加します。 |
void |
addHeader(java.lang.String name,
java.lang.String value)
指定された名前と値を持つ応答ヘッダを追加します。 |
void |
addIntHeader(java.lang.String name,
int value)
指定された名前と整数値を持つ応答ヘッダを追加します。 |
boolean |
containsHeader(java.lang.String name)
指定された応答ヘッダがすでに設定されているかどうかを示す論理値を返します。 |
java.lang.String |
encodeRedirectUrl(java.lang.String url)
推奨されていません。 バージョン 2.1以降では、代わりに encodeRedirectURL(String url) を使用します。 |
java.lang.String |
encodeRedirectURL(java.lang.String url)
sendRedirect メソッド内で使用するために、指定された URL をエンコードします。 |
java.lang.String |
encodeUrl(java.lang.String url)
推奨されていません。 バージョン 2.1 以降では、代わりに encodeURL(String url) を使用します。 |
java.lang.String |
encodeURL(java.lang.String url)
指定された URL を、その中にセッション ID を含めてエンコードします。 |
void |
sendError(int sc)
指定された状態コードを使用し、バッファをクリアして、エラー応答をクライアントに返します。 |
void |
sendError(int sc,
java.lang.String msg)
バッファをクリアし、指定された状態を使用してクライアントにエラー応答を送信します。 |
void |
sendRedirect(java.lang.String location)
指定されたリダイレクト先の URL を使用して、一時的なリダイレクト応答をクライアントに送信します。 |
void |
setDateHeader(java.lang.String name,
long date)
指定された名前と日付の値を持つ応答ヘッダを設定します。 |
void |
setHeader(java.lang.String name,
java.lang.String value)
指定された名前と値を持つ応答ヘッダを設定します。 |
void |
setIntHeader(java.lang.String name,
int value)
指定された名前と整数値を持つ応答ヘッダを設定します。 |
void |
setStatus(int sc)
この応答の状態コードを設定します。 |
void |
setStatus(int sc,
java.lang.String sm)
推奨されていません。 メッセージパラメータの意味があいまいなので、バージョン 2.1 以降では状態コードの設定には、 setStatus(int) を使用します。説明付きでエラーを送信するには、sendError(int, String) を使用します。この応答に対して状態コードとメッセージを設定します。 |
| インタフェース javax.servlet.ServletResponse から継承したメソッド |
flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getOutputStream, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale |
| フィールドの詳細 |
public static final int SC_CONTINUE
public static final int SC_SWITCHING_PROTOCOLS
public static final int SC_OK
public static final int SC_CREATED
public static final int SC_ACCEPTED
public static final int SC_NON_AUTHORITATIVE_INFORMATION
public static final int SC_NO_CONTENT
public static final int SC_RESET_CONTENT
public static final int SC_PARTIAL_CONTENT
public static final int SC_MULTIPLE_CHOICES
public static final int SC_MOVED_PERMANENTLY
public static final int SC_MOVED_TEMPORARILY
public static final int SC_SEE_OTHER
public static final int SC_NOT_MODIFIED
public static final int SC_USE_PROXY
Location フィールドに指定されたプロキシ経由で処理される必要があることを示す状態コード (305) です。public static final int SC_TEMPORARY_REDIRECT
Location フィールドに指定される必要があります。public static final int SC_BAD_REQUEST
public static final int SC_UNAUTHORIZED
public static final int SC_PAYMENT_REQUIRED
public static final int SC_FORBIDDEN
public static final int SC_NOT_FOUND
public static final int SC_METHOD_NOT_ALLOWED
Request-Line 内に指定されたメソッドが、Request-URI によって識別されるリソースに対して許可されていないことを示す状態コード (405) です。public static final int SC_NOT_ACCEPTABLE
public static final int SC_PROXY_AUTHENTICATION_REQUIRED
public static final int SC_REQUEST_TIMEOUT
public static final int SC_CONFLICT
public static final int SC_GONE
public static final int SC_LENGTH_REQUIRED
Content-Length が設定されていないと、要求を処理できないことを示す状態コード (411) です。public static final int SC_PRECONDITION_FAILED
public static final int SC_REQUEST_ENTITY_TOO_LARGE
public static final int SC_REQUEST_URI_TOO_LONG
Request-URI が、サーバが解釈できるサイズよりも長いため、サーバが要求のサービスを拒否していることを示す状態コード (414) です。public static final int SC_UNSUPPORTED_MEDIA_TYPE
public static final int SC_REQUESTED_RANGE_NOT_SATISFIABLE
public static final int SC_EXPECTATION_FAILED
public static final int SC_INTERNAL_SERVER_ERROR
public static final int SC_NOT_IMPLEMENTED
public static final int SC_BAD_GATEWAY
public static final int SC_SERVICE_UNAVAILABLE
public static final int SC_GATEWAY_TIMEOUT
public static final int SC_HTTP_VERSION_NOT_SUPPORTED
| メソッドの詳細 |
public void addCookie(Cookie cookie)
cookie - クライアントに返すクッキーpublic boolean containsHeader(java.lang.String name)
name - ヘッダ名true、そうでない場合は falsepublic java.lang.String encodeURL(java.lang.String url)
セッション追跡を確実に行うには、サーブレットにより発行されたすべての URL が、このメソッドを通じて処理される必要があります。そうしないと、クッキーをサポートしないブラウザでは、URL の書き換えによるセッション管理を使用することはできません。
url - エンコードされる URLpublic java.lang.String encodeRedirectURL(java.lang.String url)
sendRedirect メソッド内で使用するために、指定された URL をエンコードします。または、エンコーディングが必要ない場合は、変更しないで URL を返します。このメソッドの実装には、セッション ID を URL にエンコードする必要があるかどうかを判断するロジックが含まれています。この判断を行う規則が、通常のリンクをエンコードするかどうかの判断で使用する規則と異なる可能性があるため、このメソッドは encodeURL メソッドと分離されています。
HttpServletResponse.sendRedirect メソッドへ送られるすべての URL は、このメソッドを通じて処理される必要があります。そうしないと、クッキーをサポートしないブラウザで、URL の書き換えによるセッション管理を使用することはできません。
url - エンコードされる URLsendRedirect(java.lang.String),
encodeUrl(java.lang.String)public java.lang.String encodeUrl(java.lang.String url)
url - エンコードされる URLpublic java.lang.String encodeRedirectUrl(java.lang.String url)
url - エンコードされる URL
public void sendError(int sc,
java.lang.String msg)
throws java.io.IOException
応答がすでにコミットされていた場合、このメソッドは IllegalStateException をスローします。このメソッドを使用した後は、応答はコミットされたものと見なされるので、以後応答への書き出しを行ってはいけません。
sc - エラー状態コードmsg - 説明メッセージjava.io.IOException - 入出力例外が発生した場合java.lang.IllegalStateException - 応答がコミットされていた場合
public void sendError(int sc)
throws java.io.IOException
応答がすでにコミットされていた場合、このメソッドは IllegalStateException をスローします。このメソッドを使用した後は、応答はコミットされたものと見なされるので、以後応答への書き出しを行ってはいけません。
sc - エラー状態コードjava.io.IOException - 入出力例外が発生した場合java.lang.IllegalStateException - このメソッドが呼び出す前に、応答がコミットされていた場合
public void sendRedirect(java.lang.String location)
throws java.io.IOException
応答がすでにコミットされていた場合、このメソッドは IllegalStateException をスローします。このメソッドを使用した後は、応答はコミットされたものと見なされるので、以後応答への書き出しを行ってはいけません。
location - リダイレクト先 URLjava.io.IOException - 入出力例外が発生した場合java.lang.IllegalStateException - 応答がコミットされていた場合
public void setDateHeader(java.lang.String name,
long date)
containsHeader メソッドで、この値の設定前にヘッダが存在したかどうかをテストできます。name - 設定するヘッダの名前date - 割り当てられた日付の値containsHeader(java.lang.String),
addDateHeader(java.lang.String, long)
public void addDateHeader(java.lang.String name,
long date)
name - 設定するヘッダの名前date - 追加された日付の値setDateHeader(java.lang.String, long)
public void setHeader(java.lang.String name,
java.lang.String value)
containsHeader メソッドで、この値の設定前にヘッダが存在したかどうかをテストできます。name - ヘッダの名前value - ヘッダの値containsHeader(java.lang.String),
addHeader(java.lang.String, java.lang.String)
public void addHeader(java.lang.String name,
java.lang.String value)
name - ヘッダの名前value - 追加されたヘッダ値setHeader(java.lang.String, java.lang.String)
public void setIntHeader(java.lang.String name,
int value)
containsHeader メソッドで、この値の設定前にヘッダが存在したかどうかをテストできます。name - ヘッダの名前value - 割り当てられた整数値containsHeader(java.lang.String),
addIntHeader(java.lang.String, int)
public void addIntHeader(java.lang.String name,
int value)
name - ヘッダの名前value - 割り当てられた整数値setIntHeader(java.lang.String, int)public void setStatus(int sc)
sendError メソッドを使用する必要があります。
コンテナはバッファをクリアし、クッキーとほかのヘッダを保持したまま、Location ヘッダを設定します。
sc - 状態コードsendError(int, java.lang.String)
public void setStatus(int sc,
java.lang.String sm)
setStatus(int) を使用します。説明付きでエラーを送信するには、sendError(int, String) を使用します。この応答に対して状態コードとメッセージを設定します。
sc - 状態コードsm - 状態メッセージ
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||