javax.servlet.http
インタフェース HttpServletRequest

すべてのスーパーインタフェース:
ServletRequest
既知の実装クラスの一覧:
HttpServletRequestWrapper

public interface HttpServletRequest
extends ServletRequest

ServletRequest インタフェースを拡張して、HTTP サーブレット用の要求情報を提供します。

サーブレットコンテナは、HttpServletRequest オブジェクトを作成し、それを doGetdoPost などのサーブレットのサービスメソッドへ引数として渡します。


フィールドの概要
static java.lang.String BASIC_AUTH
          基本認証のための文字列識別子です。
static java.lang.String CLIENT_CERT_AUTH
          基本認証のための文字列識別子です。
static java.lang.String DIGEST_AUTH
          基本認証のための文字列識別子です。
static java.lang.String FORM_AUTH
          基本認証のための文字列識別子です。
 
メソッドの概要
 java.lang.String getAuthType()
          サーブレットを保護するために使用される認証方式の名前を返します。
 java.lang.String getContextPath()
          要求のコンテキストを示す、要求 URI の一部を返します。
 Cookie[] getCookies()
          クライアントがこの要求とともに送信したすべての Cookie オブジェクトを格納した配列を返します。
 long getDateHeader(java.lang.String name)
          指定された要求ヘッダの値を、Date オブジェクトを表す long 値として返します。
 java.lang.String getHeader(java.lang.String name)
          指定された要求ヘッダの値を String として返します。
 java.util.Enumeration getHeaderNames()
          この要求に含まれるすべてのヘッダ名の列挙を返します。
 java.util.Enumeration getHeaders(java.lang.String name)
          指定された要求ヘッダのすべての値を、String オブジェクトの Enumeration として返します。
 int getIntHeader(java.lang.String name)
          指定された要求ヘッダの値を int として返します。
 java.lang.String getMethod()
          たとえば GET、POST、PUT など、この要求を作成した HTTP メソッドの名前が返されます。
 java.lang.String getPathInfo()
          この要求を作成したときにクライアントが URL に関連付けて送信した、追加のパス情報を返します。
 java.lang.String getPathTranslated()
          サーブレット名の後でクエリー文字列の前にある追加パス情報を実際のパスに変換してから返します。
 java.lang.String getQueryString()
          要求 URL 内のパスの後ろに含まれているクエリー文字列を返します。
 java.lang.String getRemoteUser()
          この要求を作成したユーザが認証されている場合はそのログイン名を、認証されていない場合は null を返します。
 java.lang.String getRequestedSessionId()
          クライアントに指定されたセッション ID を返します。
 java.lang.String getRequestURI()
          HTTP 要求の最初の行にあるこの要求の URL の、プロトコル名からクエリー文字列までの部分を返します。
 java.lang.StringBuffer getRequestURL()
          クライアントが要求を作成するために使用した URL を再構築します。
 java.lang.String getServletPath()
          この要求のサーブレットを呼び出す URL 部分を返します。
 HttpSession getSession()
          この要求に関連付けられた現在のセッションを返します。
 HttpSession getSession(boolean create)
          この要求に関連付けられた現在の HttpSession を返します。
 java.security.Principal getUserPrincipal()
          現在の認証済みユーザの名前が格納された java.security.Principal オブジェクトを返します。
 boolean isRequestedSessionIdFromCookie()
          要求されたセッション ID がクッキーとして送られてきたかどうかをチェックします。
 boolean isRequestedSessionIdFromUrl()
          推奨されていません。 Java Servlet API 2.1 以降では、代わりに isRequestedSessionIdFromURL() を使用します。
 boolean isRequestedSessionIdFromURL()
          要求されたセッション ID が、要求 URL の一部として送られてきたかどうかをチェックします。
 boolean isRequestedSessionIdValid()
          要求されたセッション ID が現在も有効かどうかをチェックします。
 boolean isUserInRole(java.lang.String role)
          認証されたユーザが指定された論理的な「ロール」に含まれているかどうかを示す論理値を返します。
 
インタフェース javax.servlet.ServletRequest から継承したメソッド
getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentType, getInputStream, getLocale, getLocales, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRequestDispatcher, getScheme, getServerName, getServerPort, isSecure, removeAttribute, setAttribute, setCharacterEncoding
 

フィールドの詳細

BASIC_AUTH

public static final java.lang.String BASIC_AUTH
基本認証のための文字列識別子です。値は「BASIC」です。

FORM_AUTH

public static final java.lang.String FORM_AUTH
基本認証のための文字列識別子です。値は「FORM」です。

CLIENT_CERT_AUTH

public static final java.lang.String CLIENT_CERT_AUTH
基本認証のための文字列識別子です。値は「CLIENT_CERT」です。

DIGEST_AUTH

public static final java.lang.String DIGEST_AUTH
基本認証のための文字列識別子です。値は「DIGEST」です。
メソッドの詳細

getAuthType

public java.lang.String getAuthType()
サーブレットを保護するために使用される認証方式の名前を返します。すべてのサーブレットコンテナは、基本認証、フォームベース認証、およびクライアント証明書認証をサポートしています。また、それらに加えてダイジェスト認証もサポートされている場合があります。サーブレットが認証されていないと、null が返されます。

返される値は、CGI 変数 AUTH_TYPE の値と同じです。

戻り値:
認証方式を示す静的メンバー BASIC_AUTH、FORM_AUTH、CLIENT_CERT_AUTH、DIGEST_AUTH (== 演算子で比較可能) の中の 1 つ。要求が認証されていない場合は null

getCookies

public Cookie[] getCookies()
クライアントがこの要求とともに送信したすべての Cookie オブジェクトを格納した配列を返します。クッキーが送信されなかった場合、このメソッドは null を返します。
戻り値:
この要求に含まれるすべての Cookie の配列。要求にクッキーがない場合は null

getDateHeader

public long getDateHeader(java.lang.String name)
指定された要求ヘッダの値を、Date オブジェクトを表す long 値として返します。If-Modified-Since などの日付を含むヘッダに対し、このメソッドを使用します。

日付は、GMT 1970 年 1 月 1 日 からのミリ秒数として返されます。ヘッダ名は、大文字と小文字が区別されません。

指定された名前のヘッダが要求にない場合、このメソッドは -1 を返します。ヘッダを日付に変換できない場合は、IllegalArgumentException をスローします。

パラメータ:
name - ヘッダの名前を指定する String
戻り値:
GMT 1970 年 1 月 1 日 からのミリ秒数として表現された、ヘッダ内に指定された日付を示す long 値。指定されたヘッダが要求にない場合は -1
例外:
java.lang.IllegalArgumentException - ヘッダの値を日付に変換できない場合

getHeader

public java.lang.String getHeader(java.lang.String name)
指定された要求ヘッダの値を String として返します。指定された名前のヘッダが要求にない場合、このメソッドは null を返します。ヘッダ名は大文字と小文字が区別されません。どのような要求ヘッダに対しても、このメソッドを使用できます。
パラメータ:
name - ヘッダ名を指定する String
戻り値:
要求されたヘッダの値を含む String。要求にその名前のヘッダがない場合は null

getHeaders

public java.util.Enumeration getHeaders(java.lang.String name)
指定された要求ヘッダのすべての値を、String オブジェクトの Enumeration として返します。

ヘッダによっては、コンマで区切られたリストとしてヘッダを送信するのではなく、Accept-Language などのように、それぞれが異なる値の複数のヘッダとして、クライアントから送信されるものもあります。

指定された名前のヘッダが要求にない場合、このメソッドは空の Enumeration を返します。ヘッダ名は大文字と小文字が区別されません。どのような要求ヘッダに対しても、このメソッドを使用できます。

パラメータ:
name - ヘッダ名を指定する String
戻り値:
要求されたヘッダの値が格納された Enumeration。指定された名前のヘッダが要求にない場合は、空の列挙を返す。コンテナがヘッダ情報へアクセスすることを許可しない場合は、null を返す

getHeaderNames

public java.util.Enumeration getHeaderNames()
この要求に含まれるすべてのヘッダ名の列挙を返します。要求にヘッダがない場合、このメソッドは空の列挙を返します。

サーブレットコンテナの中には、サーブレットがこのメソッドを使用してヘッダにアクセスすることを許可しないものもあります。その場合、このメソッドは null を返します。

戻り値:
この要求とともに送信されたすべてのヘッダ名の列挙。要求にヘッダがない場合は、空の列挙。サーブレットがこのメソッドを使用することをサーブレットコンテナが許可しない場合は、null

getIntHeader

public int getIntHeader(java.lang.String name)
指定された要求ヘッダの値を int として返します。指定された名前のヘッダが要求にない場合、このメソッドは -1 を返します。ヘッダを整数に変換できない場合は、NumberFormatException をスローします。

ヘッダ名では、大文字と小文字を区別しません。

パラメータ:
name - 要求ヘッダの名前を指定する String
戻り値:
要求ヘッダの値を表現する整数。要求にこの名前のヘッダがない場合は -1
例外:
java.lang.NumberFormatException - ヘッダの値を int に変換できない場合

getMethod

public java.lang.String getMethod()
たとえば GET、POST、PUT など、この要求を作成した HTTP メソッドの名前が返されます。返される値は、CGI 変数 REQUEST_METHOD の値と同じです。
戻り値:
この要求を作成したメソッドの名前を指定する String

getPathInfo

public java.lang.String getPathInfo()
この要求を作成したときにクライアントが URL に関連付けて送信した、追加のパス情報を返します。追加のパス情報は、サーブレットのパスの後ろからクエリー文字列の前までの位置に書かれます。追加のパス情報がない場合、このメソッドは null を返します。

返される値は、CGI 変数 PATH_INFO の値と同じです。

戻り値:
要求 URL 内の、サーブレットのパスの後ろからクエリー文字列の前までにある追加パス情報を表す、Web コンテナによって復号された String。URL に追加パス情報が含まれていない場合は null

getPathTranslated

public java.lang.String getPathTranslated()
サーブレット名の後でクエリー文字列の前にある追加パス情報を実際のパスに変換してから返します。返される値は、CGI 変数 PATH_TRANSLATED の値と同じです。

URL に追加パス情報が含まれていない場合、このメソッドは null を返します。その場合、Web コンテナは文字列を復号化しません。

戻り値:
実際のパスを表す String。URL に追加パス情報が含まれていない場合は null

getContextPath

public java.lang.String getContextPath()
要求のコンテキストを示す、要求 URI の一部を返します。コンテキストパスは常に、要求 URI の先頭にあります。パスは「/」で始まりますが、「/」で終わりません。デフォルトのルートコンテキスト内のサーブレットに対して、このメソッドは "" を返します。コンテナはこの文字列を復号化しません。
戻り値:
要求 URI のうち、要求コンテキストを指す部分の String

getQueryString

public java.lang.String getQueryString()
要求 URL 内のパスの後ろに含まれているクエリー文字列を返します。URL にクエリー文字列が含まれていない場合、このメソッドは null を返します。返される値は、CGI 変数 QUERY_STRING の値と同じです。
戻り値:
クエリー文字列が格納された String。URL にクエリー文字列が含まれていない場合は null。値はコンテナにより復号化されない

getRemoteUser

public java.lang.String getRemoteUser()
この要求を作成したユーザが認証されている場合はそのログイン名を、認証されていない場合は null を返します。ユーザ名が以後の各要求とともに送信されるかどうかは、ブラウザと認証のタイプによって異なります。返される値は、CGI 変数 REMOTE_USER の値と同じです。
戻り値:
この要求を作成したユーザのログイン名が格納された String。ユーザのログイン名が不明な場合は null

isUserInRole

public boolean isUserInRole(java.lang.String role)
認証されたユーザが指定された論理的な「ロール」に含まれているかどうかを示す論理値を返します。ロールおよびロールのメンバーシップは、配備記述子を使用して定義できます。ユーザが認証されていなかった場合、このメソッドは false を返します。
パラメータ:
role - ロールの名前を指定する String
戻り値:
この要求を作成したユーザが指定されたロールに属しているかどうかを示す boolean。ユーザが認証されていない場合は false

getUserPrincipal

public java.security.Principal getUserPrincipal()
現在の認証済みユーザの名前が格納された java.security.Principal オブジェクトを返します。ユーザが認証されていなかった場合、このメソッドは null を返します。
戻り値:
この要求を作成したユーザの名前が格納された java.security.Principal。ユーザが認証されていなかった場合は null

getRequestedSessionId

public java.lang.String getRequestedSessionId()
クライアントに指定されたセッション ID を返します。この値は、実際に使用中のセッションの ID と異なる場合があります。たとえば、要求において古い (期限切れの) セッション ID を指定しており、サーバが新しいセッションを起動した場合、このメソッドは新しい ID の新しいセッションを取得します。要求がセッション ID を指定していなかった場合、このメソッドは null を返します。
戻り値:
セッション ID を示す String。要求がセッション ID を指定していなかった場合は null
関連項目:
isRequestedSessionIdValid()

getRequestURI

public java.lang.String getRequestURI()
HTTP 要求の最初の行にあるこの要求の URL の、プロトコル名からクエリー文字列までの部分を返します。Web コンテナはこの文字列を復号化しません。例を参照してください。 返された値
HTTP 要求の最初の行
POST /some/path.html HTTP/1.1 /some/path.html
GET http://foo.bar/a.html HTTP/1.0 /a.html
HEAD /xyz?a=b HTTP/1.1 /xyz

スキーマとホストを含む URL を再構築するには、HttpUtils.getRequestURL(javax.servlet.http.HttpServletRequest) を使用します。

戻り値:
URL のうち、プロトコル名からクエリー文字列までの部分を表す String
関連項目:
HttpUtils.getRequestURL(javax.servlet.http.HttpServletRequest)

getRequestURL

public java.lang.StringBuffer getRequestURL()
クライアントが要求を作成するために使用した URL を再構築します。返される URL にはプロトコル、サーバ名、ポート番号、およびサーバパスが含まれていますが、クエリー文字列のパラメータは含まれていません。

このメソッドは文字列でなく StringBuffer を返すため、たとえばクエリーパラメータを追加するなど、URL を簡単に変更することができます。

このメソッドは、リダイレクトメッセージの作成かエラーの報告に役に立ちます。

戻り値:
再構築された URL が格納された StringBuffer オブジェクト

getServletPath

public java.lang.String getServletPath()
この要求のサーブレットを呼び出す URL 部分を返します。この値には、サーブレットの名前またはサーブレットへのパスのどちらかが格納されますが、追加のパス情報またはクエリー文字列は含まれません。返される値は、CGI 変数 SCRIPT_NAME の値と同じです。
戻り値:
要求 URL 内に指定され、復号化される、呼び出されるサーブレットの名前またはパスが格納された String

getSession

public HttpSession getSession(boolean create)
この要求に関連付けられた現在の HttpSession を返します。現在のセッションがなく、create が true の場合は、新しいセッションを返します。

createfalse で、しかも要求に有効な HttpSession がない場合、このメソッドは null を返します。

セッションを正しく確実に維持するために、応答がコミットされる前にこのメソッドを呼び出す必要があります。コンテナがクッキーを使用してセッションを維持している場合、応答がコミットされるときに新規セッションを作成するように指定すると、IllegalStateException がスローされます。

パラメータ:
create - この要求のための新規セッションを必要に応じて作成する場合は true。現在のセッションがないときに、null を返す場合は false
戻り値:
この要求に関連付けられた HttpSessioncreatefalse で、しかも要求に有効なセッションが関連付けられていない場合は null
関連項目:
getSession()

getSession

public HttpSession getSession()
この要求に関連付けられた現在のセッションを返します。要求にセッションが関連付けられていない場合は、新しく作成します。
戻り値:
この要求に関連付けられた HttpSession
関連項目:
getSession(boolean)

isRequestedSessionIdValid

public boolean isRequestedSessionIdValid()
要求されたセッション ID が現在も有効かどうかをチェックします。
戻り値:
この要求が現在のセッションコンテキストにおいて有効なセッションの ID を持つ場合は true、そうでない場合は false
関連項目:
getRequestedSessionId(), getSession(boolean), HttpSessionContext

isRequestedSessionIdFromCookie

public boolean isRequestedSessionIdFromCookie()
要求されたセッション ID がクッキーとして送られてきたかどうかをチェックします。
戻り値:
セッション ID がクッキーとして送られてきた場合は true、そうでない場合は false
関連項目:
getSession(boolean)

isRequestedSessionIdFromURL

public boolean isRequestedSessionIdFromURL()
要求されたセッション ID が、要求 URL の一部として送られてきたかどうかをチェックします。
戻り値:
セッション ID が URL の一部として送られてきた場合は true、そうでない場合は false
関連項目:
getSession(boolean)

isRequestedSessionIdFromUrl

public boolean isRequestedSessionIdFromUrl()
推奨されていません。 Java Servlet API 2.1 以降では、代わりに isRequestedSessionIdFromURL() を使用します。



Copyright 2002 Sun Microsystems, Inc. All rights reserved.
使用には使用許諾契約が適用されます。