Class HttpMessageWriterView
java.lang.Object
org.springframework.web.reactive.result.view.HttpMessageWriterView
- All Implemented Interfaces:
View
View
that writes model attribute(s) with an HttpMessageWriter
.- Since:
- 5.0
- Author:
- Rossen Stoyanchev
-
Field Summary
Fields inherited from interface org.springframework.web.reactive.result.view.View
BINDING_CONTEXT_ATTRIBUTE
-
Constructor Summary
ConstructorDescriptionHttpMessageWriterView
(Encoder<?> encoder) Constructor with anEncoder
.HttpMessageWriterView
(HttpMessageWriter<?> writer) Constructor with a fully initializedHttpMessageWriter
. -
Method Summary
Modifier and TypeMethodDescriptionReturn the configured message writer.Return the configured model keys.Return the list of media types this View supports, or an empty list.reactor.core.publisher.Mono<Void>
render
(Map<String, ?> model, MediaType contentType, ServerWebExchange exchange) Render the view based on the givenHandlerResult
.void
setModelKeys
(Set<String> modelKeys) Set the attributes in the model that should be rendered by this view.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.web.reactive.result.view.View
isRedirectView
-
Constructor Details
-
HttpMessageWriterView
Constructor with anEncoder
. -
HttpMessageWriterView
Constructor with a fully initializedHttpMessageWriter
.
-
-
Method Details
-
getMessageWriter
Return the configured message writer. -
getSupportedMediaTypes
Return the list of media types this View supports, or an empty list.The implementation of this method for
HttpMessageWriterView
delegates toHttpMessageWriter.getWritableMediaTypes()
.- Specified by:
getSupportedMediaTypes
in interfaceView
-
setModelKeys
Set the attributes in the model that should be rendered by this view. When set, all other model attributes will be ignored. The matching attributes are further narrowed withHttpMessageWriter.canWrite(org.springframework.core.ResolvableType, org.springframework.http.MediaType)
. The matching attributes are processed as follows:- 0: nothing is written to the response body.
- 1: the matching attribute is passed to the writer.
- 2..N: if the writer supports
Map
, write all matches; otherwise raise anIllegalStateException
.
-
getModelKeys
Return the configured model keys. -
render
public reactor.core.publisher.Mono<Void> render(@Nullable Map<String, ?> model, @Nullable MediaType contentType, ServerWebExchange exchange) Description copied from interface:View
Render the view based on the givenHandlerResult
. Implementations can access and use the model or only a specific attribute in it.- Specified by:
render
in interfaceView
- Parameters:
model
- a Map with name Strings as keys and corresponding model objects as values (Map can also benull
in case of empty model)contentType
- the content type selected to render with which should match one of thesupported media types
.exchange
- the current exchange- Returns:
Mono
to represent when and if rendering succeeds
-