パッケージ jakarta.servlet.http

クラス HttpServletRequestWrapper

  • 実装されたすべてのインターフェース:
    HttpServletRequestServletRequest

    public class HttpServletRequestWrapper
    extends ServletRequestWrapper
    implements HttpServletRequest
    リクエストをサーブレットに適応させたい開発者がサブクラス化できる HttpServletRequest インターフェースの便利な実装を提供します。

    このクラスは、Wrapper または Decorator パターンを実装します。メソッドは、デフォルトでラップされたリクエストオブジェクトへの呼び出しを実行します。

    導入:
    Servlet 2.3
    関連事項:
    HttpServletRequest
    • コンストラクターの詳細

      • HttpServletRequestWrapper

        public HttpServletRequestWrapper​(HttpServletRequest request)
        指定されたリクエストをラップするリクエストオブジェクトを構築します。
        パラメーター:
        request - ラップされる HttpServletRequest
        例外:
        IllegalArgumentExceptionSE - リクエストが null の場合
    • メソッドの詳細

      • getAuthType

        public StringSE getAuthType()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getAuthType() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetAuthType 
        戻り値:
        静的メンバー BASIC_AUTH、FORM_AUTH、CLIENT_CERT_AUTH、DIGEST_AUTH(== 比較に適しています)のいずれか、認証スキームを示すコンテナー固有の文字列、リクエストが認証されなかった場合は null 
      • getCookies

        public Cookie[] getCookies()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getCookies() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetCookies 
        戻り値:
        このリクエストに含まれるすべての Cookies の配列、またはリクエストに Cookie がない場合は null 
      • getDateHeader

        public long getDateHeader​(StringSE name)
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトに getDateHeader(String name) を返すことです。
        次で指定:
        インターフェース HttpServletRequestgetDateHeader 
        パラメーター:
        name - ヘッダーの名前を指定する String 
        戻り値:
        1970 年 1 月 1 日 GMT 以降のミリ秒数として表されるヘッダーで指定された日付を表す long 値、または名前付きヘッダーがリクエストに含まれていない場合は -1
      • getHeader

        public StringSE getHeader​(StringSE name)
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトに getHeader(String name) を返すことです。
        次で指定:
        インターフェース HttpServletRequestgetHeader 
        パラメーター:
        name - ヘッダー名を指定する String 
        戻り値:
        リクエストされたヘッダーの値を含む String、またはリクエストにその名前のヘッダーがない場合は null 
      • getHeaders

        public EnumerationSE<StringSE> getHeaders​(StringSE name)
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトに getHeaders(String name) を返すことです。
        次で指定:
        インターフェース HttpServletRequestgetHeaders 
        パラメーター:
        name - ヘッダー名を指定する String 
        戻り値:
        リクエストされたヘッダーの値を含む Enumeration リクエストにその名前のヘッダーがない場合、空の列挙を返します。コンテナーがヘッダー情報へのアクセスを許可しない場合、null を返します
      • getHeaderNames

        public EnumerationSE<StringSE> getHeaderNames()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getHeaderNames() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetHeaderNames 
        戻り値:
        このリクエストで送信されたすべてのヘッダー名の列挙。リクエストにヘッダーがない場合、空の列挙。サーブレットコンテナーがサーブレットによるこのメソッドの使用を許可しない場合、null
      • getIntHeader

        public int getIntHeader​(StringSE name)
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトに getIntHeader(String name) を返すことです。
        次で指定:
        インターフェース HttpServletRequestgetIntHeader 
        パラメーター:
        name - リクエストヘッダーの名前を指定する String 
        戻り値:
        リクエストヘッダーの値を表す整数、またはリクエストにこの名前のヘッダーがない場合は -1
      • getHttpServletMapping

        public HttpServletMapping getHttpServletMapping()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getServletMapping() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetHttpServletMapping 
        戻り値:
        現在のリクエストが呼び出された方法を記述する HttpServletMapping のインスタンス。
        導入:
        Servlet 4.0
      • getMethod

        public StringSE getMethod()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getMethod() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetMethod 
        戻り値:
        このリクエストが行われたメソッドの名前を指定する String 
      • getPathInfo

        public StringSE getPathInfo()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getPathInfo() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetPathInfo 
        戻り値:
        リクエスト URL のサーブレットパスの後、クエリ文字列の前に追加のパス情報を指定する String。または、URL に追加のパス情報がない場合は null。パスは、仕様のセクション 3.5 に従って正規化されます。このメソッドは、コンテナーがエンコードされた文字を許可するように特別に構成されていない限り、エンコードされた文字を返しません。
      • getPathTranslated

        public StringSE getPathTranslated()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getPathTranslated() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetPathTranslated 
        戻り値:
        実際のパスを指定する String、または URL に追加のパス情報がない場合は null 
      • getContextPath

        public StringSE getContextPath()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getContextPath() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetContextPath 
        戻り値:
        リクエストのコンテキストを示すリクエスト URI の部分を指定する String。パスは、仕様のセクション 3.5 に従って正規化されます。このメソッドは、コンテナーがエンコードされた文字を許可するように特別に構成されていない限り、エンコードされた文字を返しません。
        関連事項:
        ServletContext.getContextPath()
      • getQueryString

        public StringSE getQueryString()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getQueryString() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetQueryString 
        戻り値:
        クエリ文字列を含む String または URL にクエリ文字列が含まれていない場合は null 値はコンテナーによってデコードされません。
      • getRemoteUser

        public StringSE getRemoteUser()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getRemoteUser() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetRemoteUser 
        戻り値:
        このリクエストを行うユーザーのログインを指定する String、またはユーザーのログインが不明な場合は null 
      • isUserInRole

        public boolean isUserInRole​(StringSE role)
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで isUserInRole(String role)を返すことです。
        次で指定:
        インターフェース HttpServletRequestisUserInRole 
        パラメーター:
        role - ロールの名前を指定する String 
        戻り値:
        このリクエストを行うユーザーが特定のロールに属しているかどうかを示す boolean。ユーザーが認証されていない場合、false 
      • getUserPrincipal

        public PrincipalSE getUserPrincipal()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getUserPrincipal() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetUserPrincipal 
        戻り値:
        このリクエストを行うユーザーの名前を含む java.security.Principal。ユーザーが認証されていない場合、null 
      • getRequestedSessionId

        public StringSE getRequestedSessionId()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getRequestedSessionId() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetRequestedSessionId 
        戻り値:
        セッション ID を指定する String、またはリクエストがセッション ID を指定しなかった場合は null 
        関連事項:
        HttpServletRequest.isRequestedSessionIdValid()
      • getRequestURI

        public StringSE getRequestURI()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getRequestURI() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetRequestURI 
        戻り値:
        プロトコル名からクエリ文字列までの URL の部分を含む String 
      • getRequestURL

        public StringBufferSE getRequestURL()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getRequestURL() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetRequestURL 
        戻り値:
        再構成された URL を含む StringBuffer オブジェクト
      • getServletPath

        public StringSE getServletPath()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getServletPath() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetServletPath 
        戻り値:
        リクエスト URL で指定された、呼び出されるサーブレットのパスを含む String、またはリクエストの処理に使用されるサーブレットが "/*" パターンを使用して一致する場合は空の文字列。パスは、仕様のセクション 3.5 に従って正規化されます。このメソッドは、コンテナーがエンコードされた文字を許可するように特別に構成されていない限り、エンコードされた文字を返しません。
      • getSession

        public HttpSession getSession​(boolean create)
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトに対して getSession(boolean create) を返すことです。
        次で指定:
        インターフェース HttpServletRequestgetSession 
        パラメーター:
        create - 必要に応じて、このリクエストの新しいセッションを作成する true。現在のセッションがない場合に null を返す false 
        戻り値:
        このリクエストに関連付けられた HttpSession または create が false でリクエストに有効なセッションがない場合は null 
        関連事項:
        HttpServletRequest.getSession()
      • getSession

        public HttpSession getSession()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの getSession() が返されます。
        次で指定:
        インターフェース HttpServletRequestgetSession 
        戻り値:
        このリクエストに関連付けられた HttpSession 
        関連事項:
        HttpServletRequest.getSession(boolean)
      • changeSessionId

        public StringSE changeSessionId()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの changeSessionId() が返されます。
        次で指定:
        インターフェース HttpServletRequestchangeSessionId 
        戻り値:
        新しいセッション ID
        導入:
        Servlet 3.1
      • isRequestedSessionIdFromCookie

        public boolean isRequestedSessionIdFromCookie()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの isRequestedSessionIdFromCookie() が返されます。
        次で指定:
        インターフェース HttpServletRequestisRequestedSessionIdFromCookie 
        戻り値:
        セッション ID がサーバーに HTTP Cookie で伝達された場合は true。それ以外の場合、false
        関連事項:
        HttpServletRequest.getSession(boolean)
      • isRequestedSessionIdFromURL

        public boolean isRequestedSessionIdFromURL()
        このメソッドのデフォルトの動作では、ラップされたリクエストオブジェクトの isRequestedSessionIdFromURL() が返されます。
        次で指定:
        インターフェース HttpServletRequestisRequestedSessionIdFromURL 
        戻り値:
        セッション ID が URL の一部としてサーバーに伝達された場合は true。それ以外の場合、false
        関連事項:
        HttpServletRequest.getSession(boolean)
      • authenticate

        public boolean authenticate​(HttpServletResponse response)
                             throws IOExceptionSE,
                                    ServletException
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで認証を呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestauthenticate 
        パラメーター:
        response - この HttpServletRequest に関連付けられた HttpServletResponse 
        戻り値:
        null 以外の値が getUserPrincipalgetRemoteUsergetAuthType によって返される値として確立された、または確立された場合の true。認証が不完全で、基盤となるログインメカニズムがレスポンスで、ユーザーに返されるメッセージ(チャレンジなど)と HTTP ステータスコードをコミットした場合は、false を返します。
        例外:
        IOExceptionSE - このリクエストからの読み取り中または指定されたレスポンスへの書き込み中に入力または出力エラーが発生した場合
        ServletException - 認証が失敗し、呼び出し元がエラーを処理する責任がある場合 (すなわち、基礎となるログインメカニズムは、ユーザーに返されるメッセージと HTTP ステータスコードを確立しませんでした)
        導入:
        Servlet 3.0
      • login

        public void login​(StringSE username,
                          StringSE password)
                   throws ServletException
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトでログインを呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestlogin 
        パラメーター:
        username - ユーザーのログイン ID に対応する String 値。
        password - 識別されたユーザーに対応するパスワード String
        例外:
        ServletException - 構成されたログインメカニズムがユーザー名パスワード認証をサポートしていない場合、または null 以外の発信者 ID がすでに確立されている場合(ログイン呼び出しの前)、または提供されたユーザー名とパスワードの検証が失敗した場合
        導入:
        Servlet 3.0
      • logout

        public void logout()
                    throws ServletException
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトでログインを呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestlogout 
        例外:
        ServletException - ログアウトに失敗した場合
        導入:
        Servlet 3.0
      • getParts

        public CollectionSE<Part> getParts()
                                  throws IOExceptionSE,
                                         ServletException
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで getParts を呼び出すことです。

        返された Collection に対する変更は、この HttpServletRequestWrapper に影響してはなりません。

        次で指定:
        インターフェース HttpServletRequestgetParts 
        戻り値:
        このリクエストの Part コンポーネントの(おそらく空の) Collection 
        例外:
        IOExceptionSE - このリクエストの Part コンポーネントの取得中に I/O エラーが発生した場合
        ServletException - このリクエストが型 multipart/form-data でない場合
        導入:
        Servlet 3.0
        関連事項:
        MultipartConfig.maxFileSize(), MultipartConfig.maxRequestSize()
      • getPart

        public Part getPart​(StringSE name)
                     throws IOExceptionSE,
                            ServletException
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで getPart を呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestgetPart 
        パラメーター:
        name - リクエストされた Part の名前
        戻り値:
        指定された名前の Part、またはリクエスト型が multipart/form-data でも Part が含まれていない場合は null 
        例外:
        IOExceptionSE - リクエストされた Part の取得中に I/O エラーが発生した場合
        ServletException - このリクエストが型 multipart/form-data でない場合
        導入:
        Servlet 3.0
        関連事項:
        MultipartConfig.maxFileSize(), MultipartConfig.maxRequestSize()
      • upgrade

        public <T extends HttpUpgradeHandler> T upgrade​(ClassSE<T> handlerClass)
                                                 throws IOExceptionSE,
                                                        ServletException
        指定されたクラスの HttpUpgradeHandler のインスタンスを作成し、http プロトコルのアップグレード処理に使用します。
        次で指定:
        インターフェース HttpServletRequestupgrade 
        型パラメーター:
        T - handlerClassHttpUpgradeHandler を継承する Class
        パラメーター:
        handlerClass - アップグレードに使用される HttpUpgradeHandler クラス。
        戻り値:
        HttpUpgradeHandler のインスタンス
        例外:
        IOExceptionSE - アップグレード中に I/O エラーが発生した場合
        ServletException - 指定された handlerClass のインスタンス化に失敗した場合
        導入:
        Servlet 3.1
        関連事項:
        HttpUpgradeHandler, WebConnection
      • newPushBuilder

        public PushBuilder newPushBuilder()
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで newPushBuilder を呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestnewPushBuilder 
        戻り値:
        現在のリクエストからサーバープッシュレスポンスを発行するための PushBuilder。プッシュがサポートされていない場合は null
        導入:
        Servlet 4.0
      • getTrailerFields

        public MapSE<StringSE,​StringSE> getTrailerFields()
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで getTrailerFields を呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestgetTrailerFields 
        戻り値:
        プロトコルレベルでの大文字と小文字に関係なく、すべてのキーが小文字であるトレーラーフィールドのマップ。トレーラーフィールドが存在しないが、HttpServletRequest.isTrailerFieldsReady() が true を返している場合、空のマップが返されます。
        導入:
        Servlet 4.0
      • isTrailerFieldsReady

        public boolean isTrailerFieldsReady()
        このメソッドのデフォルトの動作は、ラップされたリクエストオブジェクトで isTrailerFieldsReady を呼び出すことです。
        次で指定:
        インターフェース HttpServletRequestisTrailerFieldsReady 
        戻り値:
        トレーラフィールドの読み取り準備ができているかどうかのブール値
        導入:
        Servlet 4.0