|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
クライアントの要求についての情報をサーブレットへ提供するオブジェクトを定義します。サーブレットコンテナが ServletRequest オブジェクトを作成し、それを引数としてサーブレットの service メソッドへ渡します。
ServletRequest オブジェクトは、パラメータの名前と値、属性、および入力ストリームなどのデータを提供します。ServletRequest を拡張したインタフェースからは、追加情報としてのプロトコル固有データを取得することができます。たとえば、HttpServletRequest を使うと HTTP データを取得することができます。
HttpServletRequest| メソッドの概要 | |
java.lang.Object |
getAttribute(java.lang.String name)
指定された属性の値を Object として返します。 |
java.util.Enumeration |
getAttributeNames()
この要求で利用できる属性の名前が格納された Enumeration を返します。 |
java.lang.String |
getCharacterEncoding()
この要求の本体で使用される文字エンコーディングの名前を返します。 |
int |
getContentLength()
要求本体の長さを、すなわち入力ストリームから読み込めるバイト長を返します。 |
java.lang.String |
getContentType()
要求本体の MIME タイプを返します。 |
ServletInputStream |
getInputStream()
ServletInputStream を使用して、バイナリデータとして要求の本体を取得します。 |
java.util.Locale |
getLocale()
クライアントがコンテンツを受け入れる際の優先 Locale を、Accept-Language ヘッダに基づいて返します。 |
java.util.Enumeration |
getLocales()
Locale オブジェクトの Enumeration を返します。 |
java.lang.String |
getParameter(java.lang.String name)
要求パラメータの値を String として返します。 |
java.util.Map |
getParameterMap()
この要求から取得できるパラメータを java.util.Map で返します。 |
java.util.Enumeration |
getParameterNames()
この要求に含まれるパラメータの名前を格納した、 String オブジェクトの Enumeration を返します。 |
java.lang.String[] |
getParameterValues(java.lang.String name)
指定された要求パラメータのすべての値が格納された String オブジェクトの配列を返します。 |
java.lang.String |
getProtocol()
要求が使用するプロトコルの名前とバージョン番号を、たとえば HTTP/1.1 のように、protocol/majorVersion.minorVersion の形式で返します。 |
java.io.BufferedReader |
getReader()
BufferedReader を使用して、要求の本体を文字データとして取得します。 |
java.lang.String |
getRealPath(java.lang.String path)
推奨されていません。 Java Servlet API 2.1 以降では、代わりに ServletContext.getRealPath(java.lang.String) を使用します。 |
java.lang.String |
getRemoteAddr()
要求を送信したクライアントのインターネットプロトコル (IP) アドレスを返します。 |
java.lang.String |
getRemoteHost()
要求を送信したクライアントの完全指定のドメイン名を返します。 |
RequestDispatcher |
getRequestDispatcher(java.lang.String path)
指定されたパスにあるリソースのラッパーとして機能する、 RequestDispatcher オブジェクトを返します。 |
java.lang.String |
getScheme()
たとえば http、https、または ftp のように、この要求に使用されるスキーマの名前を返します。 |
java.lang.String |
getServerName()
要求を受信したサーバのホスト名を返します。 |
int |
getServerPort()
この要求を受信したポート番号を返します。 |
boolean |
isSecure()
この要求が、HTTPS などのセキュリティ保護されたチャネルを使用して送信されたかどうかを示す論理値を返します。 |
void |
removeAttribute(java.lang.String name)
この要求から属性を削除します。 |
void |
setAttribute(java.lang.String name,
java.lang.Object o)
この要求に対し属性を設定し、格納します。 |
void |
setCharacterEncoding(java.lang.String env)
この要求の本体で使用される文字エンコーディングの名前をオーバーライドします。 |
| メソッドの詳細 |
public java.lang.Object getAttribute(java.lang.String name)
Object として返します。指定された名前の属性が存在しない場合は、null を返します。
属性は 2 つの方法で設定できます。1 つは要求に付随するカスタム情報を利用できるようにサーブレットコンテナが属性を設定する方法です。たとえば、HTTPS を使用して行われた要求の場合、属性 javax.servlet.request.X509Certificate を使用して、クライアントの証明書についての情報を取得することができます。もう 1 つは setAttribute(java.lang.String, java.lang.Object) を使用して、プログラムで属性を設定する方法です。このメソッドによって、RequestDispatcher を呼び出す前に、情報を要求内に埋め込むことができます。
属性の名前は、パッケージ名と同じ規則に従う必要があります。この仕様では、java.*、javax.*、および sun.* に一致する名前を予約しています。
name - 属性の名前を指定する StringObject。属性が存在しない場合は nullpublic java.util.Enumeration getAttributeNames()
Enumeration を返します。利用できる属性が要求にない場合は、空の Enumeration を返します。Enumerationpublic java.lang.String getCharacterEncoding()
null を返します。String。要求が文字エンコーディングを指定していない場合は null
public void setCharacterEncoding(java.lang.String env)
throws java.io.UnsupportedEncodingException
env - 文字エンコーディングの名前を示す Stringjava.io.UnsupportedEncodingException - これが有効なエンコーディングでない場合public int getContentLength()
public java.lang.String getContentType()
null を返します。HTTP サーブレットの場合、返される値は CGI 変数 CONTENT_TYPE の値と同じです。String。タイプが不明な場合は null
public ServletInputStream getInputStream()
throws java.io.IOException
ServletInputStream を使用して、バイナリデータとして要求の本体を取得します。このメソッドまたは getReader() のどちらかを、本体を読み取るために呼び出すことができますが、両方を呼び出すことはできません。ServletInputStream オブジェクトjava.lang.IllegalStateException - getReader() メソッドがこの要求に対してすでに呼び出されていた場合java.io.IOException - 入出力例外が発生した場合public java.lang.String getParameter(java.lang.String name)
String として返します。パラメータが存在しない場合は、null を返します。要求パラメータは、要求とともに送信される追加情報です。HTTP サーブレットの場合、クエリー文字列内または POST された形式のデータ内にパラメータが格納されています。
パラメータに 1 つの値のみが含まれていることが確実な場合にのみ、このメソッドを使用してください。パラメータに複数の値が含まれている可能性がある場合は、getParameterValues(java.lang.String) を使用します。
複数の値を持つパラメータに対してこのメソッドを使用した場合、返される値は、getParameterValues で返される配列内の最初の値と同じです。
パラメータのデータが、HTTP POST 要求のように要求本体内で送信された場合は、getInputStream() または getReader() による本体の直接の読み取りが、このメソッドの実行に影響を与える可能性があります。
name - パラメータの名前を指定する StringStringgetParameterValues(java.lang.String)public java.util.Enumeration getParameterNames()
String オブジェクトの Enumeration を返します。パラメータが要求にない場合、このメソッドは空の Enumeration を返します。String オブジェクトの Enumeration。各 String には、要求パラメータの名前が格納されている。パラメータが要求にない場合は、空の Enumerationpublic java.lang.String[] getParameterValues(java.lang.String name)
String オブジェクトの配列を返します。パラメータが存在しない場合は、null を返します。
パラメータの値が 1 つのみである場合、配列の長さは 1 です。
name - 取得したいパラメータの名前を表す StringString オブジェクトの配列getParameter(java.lang.String)public java.util.Map getParameterMap()
public java.lang.String getProtocol()
SERVER_PROTOCOL の値と同じです。Stringpublic java.lang.String getScheme()
http、https、または ftp のように、この要求に使用されるスキーマの名前を返します。RFC 1738 に説明されているとおり、URL の形式はスキーマによって異なります。Stringpublic java.lang.String getServerName()
SERVER_NAME の値と同じです。Stringpublic int getServerPort()
SERVER_PORT の値と同じです。
public java.io.BufferedReader getReader()
throws java.io.IOException
BufferedReader を使用して、要求の本体を文字データとして取得します。リーダは、本体に使用されている文字エンコーディングに従って、文字データを変換します。本体を読み取るには、このメソッドまたは getInputStream() のどちらかを呼び出すことができますが、両方を呼び出すことはできません。BufferedReader オブジェクトjava.io.UnsupportedEncodingException - 使用された文字エンコーディングがサポートされていないので、テキストを復号化できない場合java.lang.IllegalStateException - getInputStream() メソッドが、この要求に対してすでに呼び出されていた場合java.io.IOException - 入出力例外が発生した場合getInputStream()public java.lang.String getRemoteAddr()
REMOTE_ADDR の値と同じです。Stringpublic java.lang.String getRemoteHost()
REMOTE_HOST の値と同じです。String
public void setAttribute(java.lang.String name,
java.lang.Object o)
RequestDispatcher と併せて使用されます。
属性の名前は、パッケージ名と同じ規則に従う必要があります。java.*、javax.*、および com.sun.* で始まる名前は、Sun Microsystems で使用するように予約されています。
渡された値が null の場合、removeAttribute(java.lang.String) を呼び出した場合と同じ結果となります。
name - 属性の名前を指定する Stringo - 格納される Objectpublic void removeAttribute(java.lang.String name)
属性の名前は、パッケージ名と同じ規則に従う必要があります。java.*、javax.*、および com.sun.* で始まる名前は、Sun Microsystems で使用するように予約されています。
name - 削除する属性の名前を指定する Stringpublic java.util.Locale getLocale()
Locale を、Accept-Language ヘッダに基づいて返します。クライアントの要求に Accept-Language ヘッダが提供されていなかった場合、このメソッドはサーバのデフォルトのロケールを返します。Localepublic java.util.Enumeration getLocales()
Locale オブジェクトの Enumeration を返します。この Enumeration には、Accept-Language ヘッダに基づいてクライアントが受け入れ可能なロケールが、優先ロケールから始まり降順に列挙されています。クライアントの要求に Accept-Language ヘッダが提供されていなかった場合、このメソッドは 1 つの Locale、つまりサーバのデフォルトのロケールが格納された Enumeration を返します。Locale オブジェクトの Enumerationpublic boolean isSecure()
public RequestDispatcher getRequestDispatcher(java.lang.String path)
RequestDispatcher オブジェクトを返します。RequestDispatcher オブジェクトは、要求をリソースへ転送するため、または応答内にリソースをインクルードするために使用できます。リソースは、動的または静的のどちらでもかまいません。
指定されたパス名は、相対パスを指定できますが、このサーブレットが属しているサーブレットコンテキストの外にあるリソースは指定できません。パスが "/" で始まる場合は、現在のコンテキストのルートに対する相対パスであると解釈されます。このメソッドは、サーブレットコンテナが RequestDispatcher を返すことができない場合に、null を返します。
このメソッドと ServletContext.getRequestDispatcher(java.lang.String) の違いは、このメソッドが相対パスをとることができるという点です。
path - リソースへのパス名を指定する StringRequestDispatcher オブジェクトRequestDispatcher,
ServletContext.getRequestDispatcher(java.lang.String)public java.lang.String getRealPath(java.lang.String path)
ServletContext.getRealPath(java.lang.String) を使用します。
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||