インターフェース HttpServletRequest
- すべてのスーパーインターフェース:
ServletRequest
- すべての既知の実装クラス:
HttpServletRequestWrapper
public interface HttpServletRequest extends ServletRequest
ServletRequest
インターフェースを拡張して、HTTP サーブレットのリクエスト情報を提供します。サーブレットコンテナーは
HttpServletRequest
オブジェクトを作成し、それを引数としてサーブレットのサービスメソッド(doGet
、doPost
など)に渡します。- 作成者:
- Various
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 static StringSE
BASIC_AUTH
基本認証の文字列識別子。static StringSE
CLIENT_CERT_AUTH
クライアント証明書認証の文字列識別子。static StringSE
DIGEST_AUTH
ダイジェスト認証の文字列識別子。static StringSE
FORM_AUTH
フォーム認証の文字列識別子。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド デフォルトメソッド 修飾子と型 メソッド 説明 boolean
authenticate(HttpServletResponse response)
ServletContext
用に設定されたコンテナーログインメカニズムを使用して、このリクエストを行うユーザーを認証します。StringSE
changeSessionId()
このリクエストに関連付けられている現在のセッションのセッション ID を変更し、新しいセッション ID を返します。StringSE
getAuthType()
サーブレットを保護するために使用される認証スキームの名前を返します。StringSE
getContextPath()
リクエストのコンテキストを示すリクエスト URI の部分を返します。Cookie[]
getCookies()
クライアントがこのリクエストで送信したすべてのCookie
オブジェクトを含む配列を返します。long
getDateHeader(StringSE name)
指定されたリクエストヘッダーの値を、Date
オブジェクトを表すlong
値として返します。StringSE
getHeader(StringSE name)
指定されたリクエストヘッダーの値をString
として返します。EnumerationSE<StringSE>
getHeaderNames()
このリクエストに含まれるすべてのヘッダー名の列挙を返します。EnumerationSE<StringSE>
getHeaders(StringSE name)
指定されたリクエストヘッダーのすべての値を、String
オブジェクトのEnumeration
として返します。default HttpServletMapping
getHttpServletMapping()
リクエストの HttpServletMapping を返します。int
getIntHeader(StringSE name)
指定されたリクエストヘッダーの値をint
として返します。StringSE
getMethod()
このリクエストが行われた HTTP メソッドの名前(GET、POST、PUT など)を返します。Part
getPart(StringSE name)
指定された名前のPart
を取得します。CollectionSE<Part>
getParts()
型がmultipart/form-data
である場合、このリクエストのすべてのPart
コンポーネントを取得します。StringSE
getPathInfo()
クライアントがこのリクエストを行ったときに送信した URL に関連付けられた追加のパス情報を返します。StringSE
getPathTranslated()
サーブレット名の後、クエリ文字列の前に追加のパス情報を返し、それを実際のパスに変換します。StringSE
getQueryString()
リクエスト URL のパスの後に含まれるクエリ文字列を返します。StringSE
getRemoteUser()
ユーザーが認証されている場合はこのリクエストを行っているユーザーのログインを返し、ユーザーが認証されていない場合はnull
を返します。StringSE
getRequestedSessionId()
クライアントによって指定されたセッション ID を返します。StringSE
getRequestURI()
HTTP リクエストの最初の行で、このリクエストの URL のプロトコル名からクエリ文字列までの部分を返します。StringBufferSE
getRequestURL()
クライアントがリクエストの作成に使用した URL を再構築します。StringSE
getServletPath()
サーブレットを呼び出すこのリクエストの URL の一部を返します。HttpSession
getSession()
このリクエストに関連付けられている現在のセッションを返すか、リクエストにセッションがない場合は作成します。HttpSession
getSession(boolean create)
このリクエストに関連付けられている現在のHttpSession
を返すか、現在のセッションがなく、create
が true の場合、新しいセッションを返します。default MapSE<StringSE,StringSE>
getTrailerFields()
リクエストトレーラーフィールドを取得します。PrincipalSE
getUserPrincipal()
現在の認証済みユーザーの名前を含むjava.security.Principal
オブジェクトを返します。boolean
isRequestedSessionIdFromCookie()
リクエストされたセッション ID が HTTP Cookie としてサーバーに伝達されたかどうかを確認します。boolean
isRequestedSessionIdFromURL()
リクエストされたセッション ID がリクエスト URL の一部としてサーバーに伝達されたかどうかを確認します。boolean
isRequestedSessionIdValid()
リクエストされたセッション ID がまだ有効かどうかを確認します。default boolean
isTrailerFieldsReady()
トレーラーフィールドがgetTrailerFields()
を使用して読み取る準備ができているかどうかを示すブール値を返します。boolean
isUserInRole(StringSE role)
認証されたユーザーが指定された論理的な「ロール」に含まれているかどうかを示すブール値を返します。void
login(StringSE username, StringSE password)
ServletContext
用に設定された Web コンテナーログインメカニズムで使用されるパスワード検証レルムで提供されたユーザー名とパスワードを検証します。void
logout()
リクエストでgetUserPrincipal
、getRemoteUser
、getAuthType
が呼び出されたときに返される値としてnull
を確立します。default PushBuilder
newPushBuilder()
現在のリクエストからサーバープッシュレスポンスを発行するために、PushBuilder
の新しいインスタンスをインスタンス化します。<T extends HttpUpgradeHandler>
Tupgrade(ClassSE<T> handlerClass)
指定されたクラスのHttpUpgradeHandler
のインスタンスを作成し、http プロトコルのアップグレード処理に使用します。インターフェース jakarta.servlet.ServletRequest から継承されたメソッド
getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getProtocolRequestId, getReader, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getRequestId, getScheme, getServerName, getServerPort, getServletConnection, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
メソッドの詳細
getAuthType
StringSE getAuthType()
サーブレットを保護するために使用される認証スキームの名前を返します。すべてのサーブレットコンテナーは、基本認証、フォーム認証、クライアント証明書認証をサポートし、さらにダイジェスト認証もサポートします。サーブレットが認証されない場合、null
が返されます。- 戻り値:
- 静的メンバー BASIC_AUTH、FORM_AUTH、CLIENT_CERT_AUTH、DIGEST_AUTH(== 比較に適しています)のいずれか、認証スキームを示すコンテナー固有の文字列、リクエストが認証されなかった場合は
null
getCookies
Cookie[] getCookies()
クライアントがこのリクエストで送信したすべてのCookie
オブジェクトを含む配列を返します。Cookie が送信されなかった場合、このメソッドはnull
を返します。- 戻り値:
- このリクエストに含まれるすべての
Cookies
の配列、またはリクエストに Cookie がない場合はnull
getDateHeader
long getDateHeader(StringSE name)
指定されたリクエストヘッダーの値を、Date
オブジェクトを表すlong
値として返します。If-Modified-Since
などの日付を含むヘッダーでこのメソッドを使用します。日付は、1970 年 1 月 1 日 GMT からのミリ秒数として返されます。ヘッダー名では大文字と小文字が区別されません。
リクエストに指定された名前のヘッダーがなかった場合、このメソッドは -1 を返します。ヘッダーを日付に変換できない場合、メソッドは
IllegalArgumentException
をスローします。- パラメーター:
name
- ヘッダーの名前を指定するString
- 戻り値:
- 1970 年 1 月 1 日 GMT 以降のミリ秒数として表されるヘッダーで指定された日付を表す
long
値、または名前付きヘッダーがリクエストに含まれていない場合は -1 - 例外:
IllegalArgumentExceptionSE
- ヘッダー値を日付に変換できない場合
getHeader
StringSE getHeader(StringSE name)
指定されたリクエストヘッダーの値をString
として返します。リクエストに指定された名前のヘッダーが含まれていなかった場合、このメソッドはnull
を返します。同じ名前のヘッダーが複数ある場合、このメソッドはリクエストの最初のヘッドを返します。ヘッダー名では大文字と小文字が区別されません。このメソッドは、任意のリクエストヘッダーで使用できます。- パラメーター:
name
- ヘッダー名を指定するString
- 戻り値:
- リクエストされたヘッダーの値を含む
String
、またはリクエストにその名前のヘッダーがない場合はnull
getHeaders
EnumerationSE<StringSE> getHeaders(StringSE name)
指定されたリクエストヘッダーのすべての値を、String
オブジェクトのEnumeration
として返します。Accept-Language
などの一部のヘッダーは、ヘッダーをコンマ区切りリストとして送信するのではなく、それぞれ異なる値を持つ複数のヘッダーとしてクライアントから送信できます。リクエストに指定された名前のヘッダーが含まれていなかった場合、このメソッドは空の
Enumeration
を返します。ヘッダー名では大文字と小文字が区別されません。このメソッドは、任意のリクエストヘッダーで使用できます。- パラメーター:
name
- ヘッダー名を指定するString
- 戻り値:
- リクエストされたヘッダーの値を含む
Enumeration
リクエストにその名前のヘッダーがない場合、空の列挙を返します。コンテナーがヘッダー情報へのアクセスを許可しない場合、null を返します
getHeaderNames
EnumerationSE<StringSE> getHeaderNames()
このリクエストに含まれるすべてのヘッダー名の列挙を返します。リクエストにヘッダーがない場合、このメソッドは空の列挙を返します。一部のサーブレットコンテナーでは、サーブレットがこのメソッドを使用してヘッダーにアクセスすることを許可しません。この場合、このメソッドは
null
を返します- 戻り値:
- このリクエストで送信されたすべてのヘッダー名の列挙。リクエストにヘッダーがない場合、空の列挙。サーブレットコンテナーがサーブレットによるこのメソッドの使用を許可しない場合、
null
getIntHeader
int getIntHeader(StringSE name)
指定されたリクエストヘッダーの値をint
として返します。リクエストに指定された名前のヘッダーがない場合、このメソッドは -1 を返します。ヘッダーを整数に変換できない場合、このメソッドはNumberFormatException
をスローします。ヘッダー名では大文字と小文字が区別されません。
- パラメーター:
name
- リクエストヘッダーの名前を指定するString
- 戻り値:
- リクエストヘッダーの値を表す整数、またはリクエストにこの名前のヘッダーがない場合は -1
- 例外:
NumberFormatExceptionSE
- ヘッダー値をint
に変換できない場合
getHttpServletMapping
default HttpServletMapping getHttpServletMapping()
リクエストの HttpServletMapping を返します。返されるマッピングは、
ServletRequest.getDispatcherType()
から取得した現在のDispatcherType
によって異なります。DispatcherType.REQUEST
,DispatcherType.ASYNC
,DispatcherType.ERROR
- ディスパッチのターゲットのマッピング、つまり現在の
Servlet
のマッピングを返します。 DispatcherType.INCLUDE
- 現在のディスパッチの前と同じようにマッピングを返します。つまり、返されるマッピングは、への呼び出しによって変更されません。
DispatcherType.FORWARD
RequestDispatcher
がServletContext.getNamedDispatcher(String)
を介して取得された場合を除き、ディスパッチのターゲットのマッピング、つまり現在のServlet
のマッピングを返します。この場合、現在のディスパッチの前と同じようにマッピングを返します。つまり、返されるマッピングは、ディスパッチャーが名前付きディスパッチャーでない場合にのみ、RequestDispatcher.forward(ServletRequest, jakarta.servlet.ServletResponse)
の呼び出し中に変更されます。
RequestDispatcher.include(ServletRequest, jakarta.servlet.ServletResponse)
.例:
- シーケンス Servlet1--include-> Servlet2 --include-> Servlet3 の場合、Servlet3 でこのメソッドを呼び出すと、Servlet1 のマッピングが返されます。
- シーケンス Servlet1-async-> Servlet2 --named-forward-> Servlet3 の場合、Servlet3 でこのメソッドを呼び出すと、Servlet2 のマッピングが返されます。
返されるオブジェクトは不変です。Servlet 4.0 準拠の実装は、このメソッドをオーバーライドする必要があります。
- 戻り値:
- 現在のリクエストが呼び出された方法を記述する
HttpServletMapping
のインスタンス。 - 導入:
- Servlet 4.0
getMethod
StringSE getMethod()
このリクエストが行われた HTTP メソッドの名前(GET、POST、PUT など)を返します。- 戻り値:
- このリクエストが行われたメソッドの名前を指定する
String
getPathInfo
StringSE getPathInfo()
クライアントがこのリクエストを行ったときに送信した URL に関連付けられた追加のパス情報を返します。追加のパス情報は、サーブレットのパスに続きますが、クエリ文字列の前にあり、"/" 文字で始まります。追加のパス情報がなかった場合、このメソッドは
null
を返します。- 戻り値:
- リクエスト URL のサーブレットパスの後、クエリ文字列の前に追加のパス情報を指定する
String
。または、URL に追加のパス情報がない場合はnull
。パスは、仕様のセクション 3.5 に従って正規化されます。このメソッドは、コンテナーがエンコードされた文字を許可するように特別に構成されていない限り、エンコードされた文字を返しません。 - 例外:
IllegalArgumentExceptionSE
- 標準構成では、このメソッドは決してスローしません。ただし、コンテナーは、3.5.2 によって識別されるいくつかの疑わしいシーケンスを拒否しないように構成することができます。さらに、コンテナーは、getRequestURI()
などのより安全なメソッドを介してのみそのようなパスにアクセスできるようにし、このメソッドがそのような疑わしいパスに対して呼び出された場合は IllegalArgumentException をスローするように構成することができます。
getPathTranslated
StringSE getPathTranslated()
サーブレット名の後、クエリ文字列の前に追加のパス情報を返し、それを実際のパスに変換します。URL に追加のパス情報がない場合、このメソッドは
null
を返すか、サーブレットコンテナーが何らかの理由(Web アプリケーションがアーカイブから実行される場合など)で仮想パスを実際のパスに変換できません。Web コンテナーはこの文字列をデコードしません。- 戻り値:
- 実際のパスを指定する
String
、または URL に追加のパス情報がない場合はnull
newPushBuilder
default PushBuilder newPushBuilder()
現在のリクエストからサーバープッシュレスポンスを発行するために、PushBuilder
の新しいインスタンスをインスタンス化します。現在の接続がサーバープッシュをサポートしていない場合、またはSETTINGS_ENABLE_PUSH
設定フレーム値0
(ゼロ)を介してクライアントによってサーバープッシュが無効にされている場合、このメソッドは null を返します。- 戻り値:
- 現在のリクエストからサーバープッシュレスポンスを発行するための
PushBuilder
。プッシュがサポートされていない場合は null - 導入:
- Servlet 4.0
getContextPath
StringSE getContextPath()
リクエストのコンテキストを示すリクエスト URI の部分を返します。コンテキストパスは、常にリクエスト URI の最初に来ます。パスは "/" 文字で始まりますが、"/" 文字で終わりません。デフォルト(ルート)コンテキストのサーブレットの場合、このメソッドは "" を返します。コンテナーはこの文字列をデコードしません。サーブレットコンテナーは、複数のコンテキストパスによってコンテキストと一致する可能性があります。このような場合、このメソッドはリクエストで使用される実際のコンテキストパスを返します。
ServletContext.getContextPath()
メソッドが返すパスとは異なる場合があります。ServletContext.getContextPath()
によって返されるコンテキストパスは、アプリケーションのプライムまたは優先コンテキストパスと見なされる必要があります。- 戻り値:
- リクエストのコンテキストを示すリクエスト URI の部分を指定する
String
。パスは、仕様のセクション 3.5 に従って正規化されます。このメソッドは、コンテナーがエンコードされた文字を許可するように特別に構成されていない限り、エンコードされた文字を返しません。 - 例外:
IllegalArgumentExceptionSE
- 標準構成では、このメソッドは決してスローしません。ただし、コンテナーは、3.5.2 によって識別されるいくつかの疑わしいシーケンスを拒否しないように構成することができます。さらに、コンテナーは、getRequestURI()
などのより安全なメソッドを介してのみそのようなパスにアクセスできるようにし、このメソッドがそのような疑わしいパスに対して呼び出された場合は IllegalArgumentException をスローするように構成することができます。- 関連事項:
ServletContext.getContextPath()
getQueryString
StringSE getQueryString()
リクエスト URL のパスの後に含まれるクエリ文字列を返します。URL にクエリ文字列がない場合、このメソッドはnull
を返します。- 戻り値:
- クエリ文字列を含む
String
または URL にクエリ文字列が含まれていない場合はnull
値はコンテナーによってデコードされません。
getRemoteUser
StringSE getRemoteUser()
ユーザーが認証されている場合はこのリクエストを行っているユーザーのログインを返し、ユーザーが認証されていない場合はnull
を返します。後続の各リクエストでユーザー名が送信されるかどうかは、ブラウザーと認証の種類によって異なります。- 戻り値:
- このリクエストを行うユーザーのログインを指定する
String
、またはユーザーのログインが不明な場合はnull
isUserInRole
boolean isUserInRole(StringSE role)
認証されたユーザーが指定された論理的な「ロール」に含まれているかどうかを示すブール値を返します。デプロイ記述子を使用して、ロールとロールメンバーシップを定義できます。ユーザーが認証されていない場合、メソッドはfalse
を返します。isUserInRole
を呼び出す際に、ロール名 "*" を引数として使用しないでください。"*" を使用してisUserInRole
を呼び出すと、false を返す必要があります。テストするセキュリティロールのロール名が "**" で、アプリケーションがロール名 "**" のアプリケーションセキュリティロールを宣言していない場合、isUserInRole
はユーザーが認証された場合にのみ true を返す必要があります。つまり、getRemoteUser()
とgetUserPrincipal()
の両方が null 以外の値を返す場合のみです。それ以外の場合、コンテナーはアプリケーションロールのメンバーシップについてユーザーを確認する必要があります。- パラメーター:
role
- ロールの名前を指定するString
- 戻り値:
- このリクエストを行うユーザーが特定のロールに属しているかどうかを示す
boolean
。ユーザーが認証されていない場合、false
getUserPrincipal
PrincipalSE getUserPrincipal()
現在の認証済みユーザーの名前を含むjava.security.Principal
オブジェクトを返します。ユーザーが認証されていない場合、メソッドはnull
を返します。- 戻り値:
- このリクエストを行うユーザーの名前を含む
java.security.Principal
。ユーザーが認証されていない場合、null
getRequestedSessionId
StringSE getRequestedSessionId()
クライアントによって指定されたセッション ID を返します。これは、このリクエストの現在の有効なセッションの ID と同じではない場合があります。クライアントがセッション ID を指定しなかった場合、このメソッドはnull
を返します。- 戻り値:
- セッション ID を指定する
String
、またはリクエストがセッション ID を指定しなかった場合はnull
- 関連事項:
isRequestedSessionIdValid()
getRequestURI
StringSE 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 の部分を含む
String
getRequestURL
StringBufferSE getRequestURL()
クライアントがリクエストの作成に使用した URL を再構築します。返される URL には、プロトコル、サーバー名、ポート番号、サーバーパスが含まれますが、クエリ文字列パラメーターは含まれません。このリクエストが
RequestDispatcher.forward(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)
を使用して転送された場合、再構成された URL のサーバーパスは、クライアントが指定したサーバーパスではなく、RequestDispatcher の取得に使用されたパスを反映する必要があります。このメソッドは文字列ではなく
StringBuffer
を返すため、たとえばクエリパラメーターを追加するために URL を簡単に変更できます。このメソッドは、リダイレクトメッセージの作成とエラーの報告に役立ちます。
- 戻り値:
- 再構成された URL を含む
StringBuffer
オブジェクト
getServletPath
StringSE getServletPath()
サーブレットを呼び出すこのリクエストの URL の部分を返します。このパスは "/" 文字で始まり、サーブレットへのパスが含まれていますが、追加のパス情報やクエリ文字列は含まれていません。このリクエストの処理に使用されたサーブレットが "/*" パターンを使用して一致した場合、このメソッドは空の文字列("")を返します。
- 戻り値:
- リクエスト URL で指定された、呼び出されるサーブレットのパスを含む
String
、またはリクエストの処理に使用されるサーブレットが "/*" パターンを使用して一致する場合は空の文字列。パスは、仕様のセクション 3.5 に従って正規化されます。このメソッドは、コンテナーがエンコードされた文字を許可するように特別に構成されていない限り、エンコードされた文字を返しません。 - 例外:
IllegalArgumentExceptionSE
- 標準構成では、このメソッドは決してスローしません。ただし、コンテナーは、3.5.2 によって識別されるいくつかの疑わしいシーケンスを拒否しないように構成することができます。さらに、コンテナーは、getRequestURI()
などのより安全なメソッドを介してのみそのようなパスにアクセスできるようにし、このメソッドがそのような疑わしいパスに対して呼び出された場合は IllegalArgumentException をスローするように構成することができます。
getSession
HttpSession getSession(boolean create)
このリクエストに関連付けられている現在のHttpSession
を返すか、現在のセッションがなく、create
が true の場合、新しいセッションを返します。create
がfalse
であり、リクエストに有効なHttpSession
がない場合、このメソッドはnull
を返します。セッションが適切に維持されるようにするには、レスポンスがコミットされる前にこのメソッドを呼び出す必要があります。コンテナーが Cookie を使用してセッションの整合性を維持しており、レスポンスがコミットされたときに新しいセッションを作成するように要求された場合、IllegalStateException がスローされます。
- パラメーター:
create
- 必要に応じて、このリクエストの新しいセッションを作成するtrue
。現在のセッションがない場合にnull
を返すfalse
- 戻り値:
- このリクエストに関連付けられた
HttpSession
またはcreate
がfalse
でリクエストに有効なセッションがない場合はnull
- 関連事項:
getSession()
getSession
HttpSession getSession()
このリクエストに関連付けられている現在のセッションを返すか、リクエストにセッションがない場合は作成します。- 戻り値:
- このリクエストに関連付けられた
HttpSession
- 関連事項:
getSession(boolean)
changeSessionId
StringSE changeSessionId()
このリクエストに関連付けられている現在のセッションのセッション ID を変更し、新しいセッション ID を返します。- 戻り値:
- 新しいセッション ID
- 例外:
IllegalStateExceptionSE
- リクエストに関連付けられたセッションがない場合- 導入:
- Servlet 3.1
isRequestedSessionIdValid
boolean isRequestedSessionIdValid()
リクエストされたセッション ID がまだ有効かどうかを確認します。クライアントがセッション ID を指定しなかった場合、このメソッドは
false
を返します。- 戻り値:
- このリクエストに現在のセッションコンテキスト内の有効なセッションの ID がある場合、
true
。それ以外の場合はfalse
- 関連事項:
getRequestedSessionId()
,getSession(boolean)
isRequestedSessionIdFromCookie
boolean isRequestedSessionIdFromCookie()
リクエストされたセッション ID が HTTP Cookie としてサーバーに伝達されたかどうかを確認します。
- 戻り値:
- セッション ID がサーバーに HTTP Cookie で伝達された場合は
true
。それ以外の場合、false
- 関連事項:
getSession(boolean)
isRequestedSessionIdFromURL
boolean isRequestedSessionIdFromURL()
リクエストされたセッション ID がリクエスト URL の一部としてサーバーに伝達されたかどうかを確認します。
- 戻り値:
- セッション ID が URL の一部としてサーバーに伝達された場合は
true
。それ以外の場合、false
- 関連事項:
getSession(boolean)
authenticate
boolean authenticate(HttpServletResponse response) throws IOExceptionSE, ServletException
ServletContext
用に設定されたコンテナーログインメカニズムを使用して、このリクエストを行うユーザーを認証します。このメソッドは、引数
HttpServletResponse
を変更およびコミットできます。- パラメーター:
response
- このHttpServletRequest
に関連付けられたHttpServletResponse
- 戻り値:
- null 以外の値が
getUserPrincipal
、getRemoteUser
、getAuthType
によって返される値として確立された、または確立された場合のtrue
。認証が不完全で、基盤となるログインメカニズムがレスポンスで、ユーザーに返されるメッセージ(チャレンジなど)と HTTP ステータスコードをコミットした場合は、false
を返します。 - 例外:
IOExceptionSE
- このリクエストからの読み取り中または指定されたレスポンスへの書き込み中に入力または出力エラーが発生した場合IllegalStateExceptionSE
- ログインメカニズムがレスポンスを変更しようとし、すでにコミットされている場合ServletException
- 認証が失敗し、呼び出し元がエラーを処理する責任がある場合 (すなわち、基礎となるログインメカニズムは、ユーザーに返されるメッセージと HTTP ステータスコードを確立しませんでした)- 導入:
- Servlet 3.0
login
void login(StringSE username, StringSE password) throws ServletException
ServletContext
用に設定された Web コンテナーログインメカニズムで使用されるパスワード検証レルムで提供されたユーザー名とパスワードを検証します。このメソッドは、
ServletContext
用に構成されたログインメカニズムがユーザー名パスワードの検証をサポートしている場合、およびログインの呼び出し時にリクエストの呼び出し元の ID が確立されていない場合(つまり、getUserPrincipal
、getRemoteUser
、getAuthType
のすべて)、ServletException
をスローせずに戻ります。null を返します)、提供された資格情報の検証が成功した場合。それ以外の場合、このメソッドは以下に説明するようにServletException
をスローします。このメソッドが例外をスローせずに戻る場合、
getUserPrincipal
、getRemoteUser
、getAuthType
によって返される値として null 以外の値を確立している必要があります。- パラメーター:
username
- ユーザーのログイン ID に対応するString
値。password
- 識別されたユーザーに対応するパスワードString
。- 例外:
ServletException
- 構成されたログインメカニズムがユーザー名パスワード認証をサポートしていない場合、または null 以外の発信者 ID がすでに確立されている場合(ログイン呼び出しの前)、または提供されたユーザー名とパスワードの検証が失敗した場合- 導入:
- Servlet 3.0
logout
void logout() throws ServletException
リクエストでgetUserPrincipal
、getRemoteUser
、getAuthType
が呼び出されたときに返される値としてnull
を確立します。- 例外:
ServletException
- ログアウトに失敗した場合- 導入:
- Servlet 3.0
getParts
CollectionSE<Part> getParts() throws IOExceptionSE, ServletException
型がmultipart/form-data
である場合、このリクエストのすべてのPart
コンポーネントを取得します。このリクエストの型が
multipart/form-data
であるが、Part
コンポーネントが含まれていない場合、返されるCollection
は空になります。返された
Collection
に対する変更は、このHttpServletRequest
に影響してはなりません。- 戻り値:
- このリクエストの
Part
コンポーネントの(おそらく空の)Collection
- 例外:
IOExceptionSE
- このリクエストのPart
コンポーネントの取得中に I/O エラーが発生した場合ServletException
- このリクエストが型multipart/form-data
でない場合IllegalStateExceptionSE
- リクエスト本体がmaxRequestSize
より大きいか、リクエスト内のPart
がmaxFileSize
より大きいか、デプロイ記述子に@MultipartConfig
またはmultipart-config
がない場合- 導入:
- Servlet 3.0
- 関連事項:
MultipartConfig.maxFileSize()
,MultipartConfig.maxRequestSize()
getPart
Part getPart(StringSE name) throws IOExceptionSE, ServletException
指定された名前のPart
を取得します。- パラメーター:
name
- リクエストされたPart
の名前- 戻り値:
- 指定された名前の
Part
、またはリクエスト型がmultipart/form-data
でもPart
が含まれていない場合はnull
- 例外:
IOExceptionSE
- リクエストされたPart
の取得中に I/O エラーが発生した場合ServletException
- このリクエストが型multipart/form-data
でない場合IllegalStateExceptionSE
- リクエスト本体がmaxRequestSize
より大きいか、リクエスト内のPart
がmaxFileSize
より大きいか、デプロイ記述子に@MultipartConfig
またはmultipart-config
がない場合- 導入:
- Servlet 3.0
- 関連事項:
MultipartConfig.maxFileSize()
,MultipartConfig.maxRequestSize()
upgrade
<T extends HttpUpgradeHandler> T upgrade(ClassSE<T> handlerClass) throws IOExceptionSE, ServletException
指定されたクラスのHttpUpgradeHandler
のインスタンスを作成し、http プロトコルのアップグレード処理に使用します。- 型パラメーター:
T
-handlerClass
のHttpUpgradeHandler
を継承するClass
。- パラメーター:
handlerClass
- アップグレードに使用されるHttpUpgradeHandler
クラス。- 戻り値:
HttpUpgradeHandler
のインスタンス- 例外:
IOExceptionSE
- アップグレード中に I/O エラーが発生した場合ServletException
- 指定されたhandlerClass
のインスタンス化に失敗した場合- 導入:
- Servlet 3.1
- 関連事項:
HttpUpgradeHandler
,WebConnection
getTrailerFields
default MapSE<StringSE,StringSE> getTrailerFields()
リクエストトレーラーフィールドを取得します。返されたマップは
HttpServletRequest
オブジェクトによって支援されないため、返されたマップの変更はHttpServletRequest
オブジェクトに反映されず、その逆も同様です。isTrailerFieldsReady()
を最初に呼び出して、例外を発生させずにこのメソッドを呼び出しても安全かどうかを判断する必要があります。- 戻り値:
- プロトコルレベルでの大文字と小文字に関係なく、すべてのキーが小文字であるトレーラーフィールドのマップ。トレーラーフィールドが存在しないが、
isTrailerFieldsReady()
が true を返している場合、空のマップが返されます。 - 例外:
IllegalStateExceptionSE
-isTrailerFieldsReady()
が偽の場合- 導入:
- Servlet 4.0
isTrailerFieldsReady
default boolean isTrailerFieldsReady()
トレーラーフィールドがgetTrailerFields()
を使用して読み取る準備ができているかどうかを示すブール値を返します。このメソッドは、リクエストにトレーラがないことがわかっている場合、たとえば、基になるプロトコル(HTTP 1.0 など)がトレーラフィールドをサポートしていないか、リクエストが HTTP 1.1 のチャンクエンコーディングにない場合、すぐに true を返します。また、次の条件の両方が満たされる場合、メソッドは true を返します。- アプリケーションはすべてのリクエストデータを読み取り、
ServletRequest.getReader()
またはServletRequest.getInputStream()
から EOF 指示が返されました。 - クライアントから送信されたすべてのトレーラーフィールドが受信されました。クライアントがトレーラーフィールドを送信していない可能性があることに注意してください。
- 戻り値:
- トレーラフィールドの読み取り準備ができているかどうかのブール値
- 導入:
- Servlet 4.0
- アプリケーションはすべてのリクエストデータを読み取り、