Interface View
- All Known Implementing Classes:
AbstractUrlBasedView, AbstractView, FreeMarkerView, HttpMessageWriterView, RedirectView, ScriptTemplateView
public interface View
Contract to render
HandlerResult to the HTTP response.
In contrast to an Encoder
which is a singleton and encodes any object of a given type, a View
is typically selected by name and resolved using a ViewResolver
which may for example match it to an HTML template. Furthermore a View
may render based on multiple attributes contained in the model.
A View can also choose to select an attribute from the model use
any existing Encoder to render alternate media types.
- Since:
- 5.0
- Author:
- Rossen Stoyanchev
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe name of the exchange attribute that contains theBindingContextfor the request which can be used to createBindingResultinstances for objects in to the model. -
Method Summary
Modifier and TypeMethodDescriptionReturn the list of media types this View supports, or an empty list.default booleanWhether this View does render by performing a redirect.reactor.core.publisher.Mono<Void> Render the view based on the givenHandlerResult.
-
Field Details
-
BINDING_CONTEXT_ATTRIBUTE
The name of the exchange attribute that contains theBindingContextfor the request which can be used to createBindingResultinstances for objects in to the model.Note: This attribute is not required and may not be present.
- Since:
- 5.1.8
-
-
Method Details
-
getSupportedMediaTypes
-
isRedirectView
default boolean isRedirectView()Whether this View does render by performing a redirect. -
render
reactor.core.publisher.Mono<Void> render(@Nullable Map<String, ?> model, @Nullable MediaType contentType, ServerWebExchange exchange) Render the view based on the givenHandlerResult. Implementations can access and use the model or only a specific attribute in it.- Parameters:
model- a Map with name Strings as keys and corresponding model objects as values (Map can also benullin 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:
Monoto represent when and if rendering succeeds
-