クラス MockHttpServletRequestBuilder

java.lang.ObjectSE
org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder
実装されたすべてのインターフェース:
MergeableConfigurableSmartRequestBuilder<MockHttpServletRequestBuilder>RequestBuilderSmartRequestBuilder
既知の直属サブクラス
MockMultipartHttpServletRequestBuilder

public class MockHttpServletRequestBuilder extends ObjectSE implements ConfigurableSmartRequestBuilder<MockHttpServletRequestBuilder>, Mergeable
MockHttpServletRequest のデフォルトビルダーは、MockMvc でリクエストを実行するための入力として必要です。

通常、アプリケーションテストは、MockMvcRequestBuilders の静的ファクトリメソッドを介してこのビルダーにアクセスします。

このクラスは拡張用に開かれていません。作成された MockHttpServletRequest にカスタム初期化を適用するには、with(RequestPostProcessor) 拡張ポイントを使用してください。

導入:
3.2
作成者:
Rossen Stoyanchev, Juergen Hoeller, Arjen Poutsma, Sam Brannen, Kamill Sokol
  • メソッドの詳細

    • contextPath

      public MockHttpServletRequestBuilder contextPath(StringSE contextPath)
      コンテキストパスを表す requestURI の部分を指定します。コンテキストパスを指定する場合、リクエスト URI の先頭に一致する必要があります。

      ほとんどの場合、requestURI からコンテキストパスを省略することでテストを作成できます。これは、ほとんどのアプリケーションが実際にデプロイされている名前に依存しないためです。ここで指定する場合、コンテキストパスは "/" で始まる必要があり、"/" で終わることはできません。

      関連事項:
    • servletPath

      public MockHttpServletRequestBuilder servletPath(StringSE servletPath)
      サーブレットがマップされるパスを表す requestURI の部分を指定します。これは通常、コンテキストパスの後の requestURI の一部です。

      ほとんどの場合、requestURI からサーブレットパスを省略することでテストを作成できます。これは、ほとんどのアプリケーションが、実際にサーブレットがマップされるプレフィックスに依存しないためです。たとえば、サーブレットが "/main/*" にマッピングされている場合、"/main/accounts/1" ではなく requestURI "/accounts/1" を使用してテストを記述できます。ここで指定する場合、servletPath は "/" で始まり、"/" で終わってはなりません。

      関連事項:
    • pathInfo

      public MockHttpServletRequestBuilder pathInfo(@Nullable StringSE pathInfo)
      pathInfo を表す requestURI の部分を指定します。

      指定しない場合(推奨)、pathURI は、requestURI から contextPath と servletPath を削除し、残りの部分を使用して自動的に導出されます。ここで指定する場合、pathInfo は "/" で始まる必要があります。

      指定した場合、pathInfo はそのまま使用されます。

      関連事項:
    • secure

      public MockHttpServletRequestBuilder secure(boolean secure)
      HTTPS などのセキュアチャネルの使用を示す ServletRequestEE のセキュアプロパティを設定します。
      パラメーター:
      secure - リクエストが安全なチャネルを使用しているかどうか
    • characterEncoding

      public MockHttpServletRequestBuilder characterEncoding(CharsetSE encoding)
      リクエストの文字エンコーディングを設定します。
      パラメーター:
      encoding - 文字エンコーディング
      導入:
      5.3.10
      関連事項:
    • characterEncoding

      public MockHttpServletRequestBuilder characterEncoding(StringSE encoding)
      リクエストの文字エンコーディングを設定します。
      パラメーター:
      encoding - 文字エンコーディング
    • content

      public MockHttpServletRequestBuilder content(byte[] content)
      リクエスト本文を設定します。

      コンテンツが提供され、contentType(MediaType) が application/x-www-form-urlencoded に設定されている場合、コンテンツは解析されて、request parameters マップを作成するために使用されます。

      パラメーター:
      content - ボディコンテンツ
    • content

      public MockHttpServletRequestBuilder content(StringSE content)
      リクエストの本文を UTF-8 文字列として設定します。

      コンテンツが提供され、contentType(MediaType) が application/x-www-form-urlencoded に設定されている場合、コンテンツは解析されて、request parameters マップを作成するために使用されます。

      パラメーター:
      content - ボディコンテンツ
    • contentType

      public MockHttpServletRequestBuilder contentType(MediaType contentType)
      リクエストの "Content-Type" ヘッダーを設定します。

      コンテンツが提供され、contentType が application/x-www-form-urlencoded に設定されている場合、コンテンツは解析され、request parameters マップを作成するために使用されます。

      パラメーター:
      contentType - コンテンツ型
    • contentType

      public MockHttpServletRequestBuilder contentType(StringSE contentType)
      リクエストの "Content-Type" ヘッダーを生の文字列値として設定します。これは、(テスト目的で)整形式ではない可能性があります。
      パラメーター:
      contentType - コンテンツ型
      導入:
      4.1.2
    • accept

      public MockHttpServletRequestBuilder accept(MediaType... mediaTypes)
      'Accept' ヘッダーを指定されたメディア型に設定します。
      パラメーター:
      mediaTypes - 1 つ以上のメディア型
    • accept

      public MockHttpServletRequestBuilder accept(StringSE... mediaTypes)
      生の文字列値を使用して Accept ヘッダーを設定しますが、(テスト目的で)整形式ではない可能性があります。
      パラメーター:
      mediaTypes - 1 つ以上のメディア型。カンマ区切りの文字列として内部的に結合されます
    • header

      public MockHttpServletRequestBuilder header(StringSE name, ObjectSE... values)
      リクエストにヘッダーを追加します。値は常に追加されます。
      パラメーター:
      name - ヘッダー名
      values - 1 つ以上のヘッダー値
    • headers

      public MockHttpServletRequestBuilder headers(HttpHeaders httpHeaders)
      すべてのヘッダーをリクエストに追加します。値は常に追加されます。
      パラメーター:
      httpHeaders - 追加するヘッダーと値
    • param

      public MockHttpServletRequestBuilder param(StringSE name, StringSE... values)
      リクエストパラメーターを MockHttpServletRequest.getParameterMap() に追加します。

      Servlet API では、リクエスト文字列および / または application/x-www-form-urlencoded リクエストのボディからリクエストパラメーターを解析できます。このメソッドは、リクエストパラメーターマップに追加するだけです。次のいずれかを使用してクエリまたはフォームデータを指定することにより、サーブレットリクエストパラメーターの追加を使用することもできます。

      パラメーター:
      name - パラメーター名
      values - 1 つ以上の値
    • params

      MultiValueMap を使用した param(String, String...) のバリアント。
      パラメーター:
      params - 追加するパラメーター
      導入:
      4.2.4
    • queryParam

      public MockHttpServletRequestBuilder queryParam(StringSE name, StringSE... values)
      クエリ文字列に追加し、request parameters マップにも追加します。パラメーター名と値は、クエリ文字列に追加されるときにエンコードされます。
      パラメーター:
      name - パラメーター名
      values - 1 つ以上の値
      導入:
      5.2.2
    • queryParams

      クエリ文字列に追加し、request parameters マップにも追加します。パラメーター名と値は、クエリ文字列に追加されるときにエンコードされます。
      パラメーター:
      params - 追加するパラメーター
      導入:
      5.2.2
    • formField

      public MockHttpServletRequestBuilder formField(StringSE name, StringSE... values)
      指定された値を指定されたフォームフィールドに追加し、リクエストパラメーターマップにも追加します。
      パラメーター:
      name - フィールド名
      values - 1 つ以上の値
      導入:
      6.1.7
    • formFields

      MultiValueMap を使用した formField(String, String...) のバリアント。
      パラメーター:
      formFields - 追加するフォームフィールド
      導入:
      6.1.7
    • cookie

      public MockHttpServletRequestBuilder cookie(CookieEE... cookies)
      指定された Cookie をリクエストに追加します。Cookie は常に追加されます。
      パラメーター:
      cookies - 追加するクッキー
    • locale

      public MockHttpServletRequestBuilder locale(LocaleSE... locales)
      指定されたロケールを優先リクエストロケールとして追加します。
      パラメーター:
      locales - 追加するロケール
      導入:
      4.3.6
      関連事項:
    • locale

      リクエストのロケールを設定し、以前のロケールを上書きします。
      パラメーター:
      locale - ロケール、またはそれをリセットする null 
      関連事項:
    • requestAttr

      public MockHttpServletRequestBuilder requestAttr(StringSE name, ObjectSE value)
      リクエスト属性を設定します。
      パラメーター:
      name - 属性名
      value - 属性値
    • sessionAttr

      public MockHttpServletRequestBuilder sessionAttr(StringSE name, ObjectSE value)
      セッション属性を設定します。
      パラメーター:
      name - セッション属性名
      value - セッション属性値
    • sessionAttrs

      public MockHttpServletRequestBuilder sessionAttrs(MapSE<StringSE,ObjectSE> sessionAttributes)
      セッション属性を設定します。
      パラメーター:
      sessionAttributes - セッション属性
    • flashAttr

      public MockHttpServletRequestBuilder flashAttr(StringSE name, ObjectSE value)
      「入力」フラッシュ属性を設定します。
      パラメーター:
      name - フラッシュ属性名
      value - フラッシュ属性値
    • flashAttrs

      public MockHttpServletRequestBuilder flashAttrs(MapSE<StringSE,ObjectSE> flashAttributes)
      フラッシュ属性を設定します。
      パラメーター:
      flashAttributes - フラッシュ属性
    • session

      使用する HTTP セッションを設定します。リクエスト間で再利用される場合があります。

      sessionAttr(String, Object) を介して提供される個々の属性は、ここで提供されるセッションのコンテンツをオーバーライドします。

      パラメーター:
      session - HTTP セッション
    • principal

      public MockHttpServletRequestBuilder principal(PrincipalSE principal)
      リクエストのプリンシパルを設定します。
      パラメーター:
      principal - 校長
    • remoteAddress

      public MockHttpServletRequestBuilder remoteAddress(StringSE remoteAddress)
      リクエストのリモートアドレスを設定します。
      パラメーター:
      remoteAddress - リモートアドレス (IP)
      導入:
      6.0.10
    • with

      MockHttpServletRequestBuilder に直接組み込まれていない方法で MockHttpServletRequest をさらに初期化するための拡張ポイント。このインターフェースの実装には、ビルダースタイルのメソッド自体を含めることができ、静的ファクトリメソッドを介してアクセス可能にすることができます。
      次で指定:
      インターフェース ConfigurableSmartRequestBuilder<MockHttpServletRequestBuilder>with 
      パラメーター:
      postProcessor - 追加するポストプロセッサー
    • isMergeEnabled

      public boolean isMergeEnabled()
      この特定のインスタンスに対してマージが有効になっていますか?
      次で指定:
      インターフェース MergeableisMergeEnabled 
      戻り値:
      常に true を返します。
    • merge

      public ObjectSE merge(@Nullable ObjectSE parent)
      "this" インスタンスにまだ設定されていない場合にのみ、値を受け入れる「親」RequestBuilder のプロパティをマージします。
      次で指定:
      インターフェース Mergeablemerge 
      パラメーター:
      parent - プロパティを継承する親 RequestBuilder 
      戻り値:
      マージの結果
    • buildRequest

      public final MockHttpServletRequest buildRequest(ServletContextEE servletContext)
      MockHttpServletRequest を構築します。
      次で指定:
      インターフェース RequestBuilderbuildRequest 
      パラメーター:
      servletContext - リクエストの作成に使用する ServletContextEE
      戻り値:
      リクエスト
    • createServletRequest

      protected MockHttpServletRequest createServletRequest(ServletContextEE servletContext)
      提供された ServletContext に基づいて新しい MockHttpServletRequest を作成します。

      サブクラスでオーバーライドできます。

    • postProcessRequest

      public MockHttpServletRequest postProcessRequest(MockHttpServletRequest request)
      インターフェースからコピーされた説明: SmartRequestBuilder
      リクエストの後処理を適用します。通常、これは 1 つ以上の org.springframework.test.web.servlet.request.RequestPostProcessors を呼び出すことを意味します。
      次で指定:
      インターフェース SmartRequestBuilderpostProcessRequest 
      パラメーター:
      request - 初期化するリクエスト
      戻り値:
      使用するリクエスト。渡されたリクエストまたはラップされたリクエスト