クラス AbstractView
java.lang.ObjectSE
org.springframework.web.reactive.result.view.AbstractView
- 実装されたすべてのインターフェース:
Aware
、BeanNameAware
、ApplicationContextAware
、View
- 既知の直属サブクラス
AbstractUrlBasedView
public abstract class AbstractView
extends ObjectSE
implements View, BeanNameAware, ApplicationContextAware
View
実装の基本クラス。- 導入:
- 5.0
- 作成者:
- Rossen Stoyanchev, Sam Brannen
フィールドのサマリー
フィールド修飾子と型フィールド説明protected final Log
サブクラスで利用可能なロガー。static final StringSE
Bean ファクトリの RequestDataValueProcessor のよく知られた名前。インターフェース org.springframework.web.reactive.result.view.View から継承されたフィールド
BINDING_CONTEXT_ATTRIBUTE
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected RequestContext
createRequestContext
(ServerWebExchange exchange, MapSE<StringSE, ObjectSE> model) 指定された属性名で公開するRequestContext
を作成します。protected StringSE
ビューの名前を取得します。コンテンツ型に文字セットが含まれていない場合に使用されるデフォルトの文字セットを取得します。getModelAttributes
(MapSE<StringSE, ?> model, ServerWebExchange exchange) レンダリングに使用するモデルを準備します。このビューのRequestContext
属性の名前を取得します(ある場合)。protected RequestDataValueProcessor
使用するRequestDataValueProcessor
を取得します。このビューでサポートされている構成済みメディア型を取得します。protected final ApplicationContext
実際に使用するためにApplicationContext
を取得します。reactor.core.publisher.Mono<VoidSE>
render
(MapSE<StringSE, ?> model, MediaType contentType, ServerWebExchange exchange) レンダリングするモデルを準備します。protected abstract reactor.core.publisher.Mono<VoidSE>
renderInternal
(MapSE<StringSE, ObjectSE> renderAttributes, MediaType contentType, ServerWebExchange exchange) ビューを実際にレンダリングするには、サブクラスでこのメソッドを実装する必要があります。protected reactor.core.publisher.Mono<VoidSE>
resolveAsyncAttributes
(MapSE<StringSE, ObjectSE> model, ServerWebExchange exchange) void
setApplicationContext
(ApplicationContext applicationContext) このオブジェクトが実行される ApplicationContext を設定します。void
setBeanName
(StringSE beanName) ビューの名前を設定します。void
setDefaultCharset
(CharsetSE defaultCharset) このビューのデフォルトの文字セットを設定します。コンテンツ型に文字セットが含まれていない場合に使用されます。void
setRequestContextAttribute
(StringSE requestContextAttribute) このビューのRequestContext
属性の名前を設定します。void
setSupportedMediaTypes
(ListSE<MediaType> supportedMediaTypes) このビューでサポートされるメディア型を設定します。toString()
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.web.reactive.result.view.View から継承されたメソッド
isRedirectView
フィールドの詳細
REQUEST_DATA_VALUE_PROCESSOR_BEAN_NAME
Bean ファクトリの RequestDataValueProcessor のよく知られた名前。- 関連事項:
logger
サブクラスで利用可能なロガー。
コンストラクターの詳細
AbstractView
public AbstractView()AbstractView
メソッドの詳細
setSupportedMediaTypes
このビューでサポートされるメディア型を設定します。デフォルトは
"text/html;charset=UTF-8"
です。getSupportedMediaTypes
このビューでサポートされている構成済みメディア型を取得します。- 次で指定:
- インターフェース
View
のgetSupportedMediaTypes
setDefaultCharset
getDefaultCharset
コンテンツ型に文字セットが含まれていない場合に使用されるデフォルトの文字セットを取得します。setRequestContextAttribute
このビューのRequestContext
属性の名前を設定します。デフォルトはなし(
null
)です。getRequestContextAttribute
このビューのRequestContext
属性の名前を取得します(ある場合)。setBeanName
ビューの名前を設定します。トレーサビリティに役立ちます。フレームワークコードは、ビューを構築するときにこれを呼び出す必要があります。
- 次で指定:
- インターフェース
BeanNameAware
のsetBeanName
- パラメーター:
beanName
- ファクトリ内の Bean の名前。この名前は、ファクトリで使用される実際の Bean 名であり、最初に指定した名前とは異なる場合があります。特に内部 Bean 名の場合、実際の Bean 名は "#..." サフィックスを追加することで一意になります。必要に応じて、BeanFactoryUtils.originalBeanName(String)
メソッドを使用して、元の Bean 名(サフィックスなし)を抽出します。
getBeanName
ビューの名前を取得します。ビューが正しく構成されている場合は、
null
にしないでください。setApplicationContext
インターフェースからコピーされた説明:ApplicationContextAware
このオブジェクトが実行される ApplicationContext を設定します。通常、この呼び出しはオブジェクトの初期化に使用されます。通常の Bean プロパティの設定後、ただし
InitializingBean.afterPropertiesSet()
またはカスタム init メソッドなどの init コールバックの前に呼び出されます。ResourceLoaderAware.setResourceLoader(org.springframework.core.io.ResourceLoader)
、ApplicationEventPublisherAware.setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher)
およびMessageSourceAware
の後に呼び出されます(該当する場合)。- 次で指定:
- インターフェース
ApplicationContextAware
のsetApplicationContext
- パラメーター:
applicationContext
- このオブジェクトによって使用される ApplicationContext オブジェクト- 関連事項:
getApplicationContext
obtainApplicationContext
実際に使用するためにApplicationContext
を取得します。- 戻り値:
ApplicationContext
(非null
)- 例外:
IllegalStateExceptionSE
- ApplicationContext が入手できない場合- 関連事項:
render
public reactor.core.publisher.Mono<VoidSE> render(@Nullable MapSE<StringSE, ?> model, @Nullable MediaType contentType, ServerWebExchange exchange) レンダリングするモデルを準備します。- 次で指定:
- インターフェース
View
のrender
- パラメーター:
model
- 属性名をキーとして、対応するモデルオブジェクトを値として持つマップ (空のモデルの場合、マップはnull
にすることもできます)contentType
- レンダリングするために選択されたコンテンツ型。supported media types
のいずれかと一致する必要がありますexchange
- 現在の交換- 戻り値:
- レンダリングが成功したときと成功したかどうかを表す
Mono
getModelAttributes
protected reactor.core.publisher.Mono<MapSE<StringSE,ObjectSE>> getModelAttributes(@Nullable MapSE<StringSE, ?> model, ServerWebExchange exchange) レンダリングに使用するモデルを準備します。デフォルトの実装では、モデルと静的属性を含む結合出力マップが作成され、前者が優先されます。
resolveAsyncAttributes
protected reactor.core.publisher.Mono<VoidSE> resolveAsyncAttributes(MapSE<StringSE, ObjectSE> model, ServerWebExchange exchange) 構成済みのReactiveAdapterRegistry
を使用して、非同期属性をMono<T>
またはMono<List<T>>
に適応させ、実際の値に解決するのを待ちます。返されたMono<Void>
が完了すると、モデルの非同期属性は、対応する解決された値に置き換えられます。- 戻り値:
- モデルの準備ができたときに完了する
Mono
の結果 - 導入:
- 5.1.8
createRequestContext
protected RequestContext createRequestContext(ServerWebExchange exchange, MapSE<StringSE, ObjectSE> model) 指定された属性名で公開するRequestContext
を作成します。デフォルトの実装では、指定された交換とモデルの標準
RequestContext
インスタンスを作成します。サブクラスでオーバーライドして、カスタムインスタンスを作成できます。
- パラメーター:
exchange
- 現在の交換model
- 動的な値が静的な属性よりも優先される、結合された出力マップ(決してnull
ではない)- 戻り値:
RequestContext
インスタンス- 関連事項:
getRequestDataValueProcessor
使用するRequestDataValueProcessor
を取得します。デフォルトの実装では、
REQUEST_DATA_VALUE_PROCESSOR_BEAN_NAME
という名前のRequestDataValueProcessor
Bean をApplicationContext
で探します。- 戻り値:
RequestDataValueProcessor
、またはアプリケーションコンテキストに何もない場合はnull
renderInternal
protected abstract reactor.core.publisher.Mono<VoidSE> renderInternal(MapSE<StringSE, ObjectSE> renderAttributes, @Nullable MediaType contentType, ServerWebExchange exchange) ビューを実際にレンダリングするには、サブクラスでこのメソッドを実装する必要があります。- パラメーター:
renderAttributes
- 静的な属性よりも動的な値が優先される、結合された出力マップ(非null
)contentType
- レンダリングするために選択されたコンテンツ型。サポートされているメディア型のいずれかと一致する必要がありますexchange
- 現在の交換- 戻り値:
- レンダリングが成功したときと成功したかどうかを表す
Mono
toString
formatViewName