Class DelegatingWebMvcConfiguration
- java.lang.Object
- org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport
- org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration
- All Implemented Interfaces:
Aware
,ApplicationContextAware
,ServletContextAware
@Configuration(proxyBeanMethods=false) public class DelegatingWebMvcConfiguration extends WebMvcConfigurationSupport
A subclass ofWebMvcConfigurationSupport
that detects and delegates to all beans of typeWebMvcConfigurer
allowing them to customize the configuration provided byWebMvcConfigurationSupport
. This is the class actually imported by@EnableWebMvc
.- Since:
- 3.1
- Author:
- Rossen Stoyanchev
Constructor Summary
Constructors Constructor Description DelegatingWebMvcConfiguration()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)
Add customHandlerMethodArgumentResolvers
to use in addition to the ones registered by default.protected void
addCorsMappings(CorsRegistry registry)
Override this method to configure cross origin requests processing.protected void
addFormatters(FormatterRegistry registry)
Override this method to add customConverter
and/orFormatter
delegates to the commonFormattingConversionService
.protected void
addInterceptors(InterceptorRegistry registry)
Override this method to add Spring MVC interceptors for pre- and post-processing of controller invocation.protected void
addResourceHandlers(ResourceHandlerRegistry registry)
Override this method to add resource handlers for serving static resources.protected void
addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)
Add customHandlerMethodReturnValueHandlers
in addition to the ones registered by default.protected void
addViewControllers(ViewControllerRegistry registry)
Override this method to add view controllers.protected void
configureAsyncSupport(AsyncSupportConfigurer configurer)
Override this method to configure asynchronous request processing options.protected void
configureContentNegotiation(ContentNegotiationConfigurer configurer)
Override this method to configure content negotiation.protected void
configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
Override this method to configure "default" Servlet handling.protected void
configureHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Override this method to configure the list ofHandlerExceptionResolvers
to use.protected void
configureMessageConverters(List<HttpMessageConverter<?>> converters)
Override this method to add customHttpMessageConverters
to use with theRequestMappingHandlerAdapter
and theExceptionHandlerExceptionResolver
.protected void
configurePathMatch(PathMatchConfigurer configurer)
Override this method to configure path matching options.protected void
configureViewResolvers(ViewResolverRegistry registry)
Override this method to configure view resolution.protected void
extendHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Override this method to extend or modify the list ofHandlerExceptionResolvers
after it has been configured.protected void
extendMessageConverters(List<HttpMessageConverter<?>> converters)
Override this method to extend or modify the list of converters after it has been configured.protected MessageCodesResolver
getMessageCodesResolver()
Override this method to provide a customMessageCodesResolver
.protected Validator
getValidator()
Override this method to provide a customValidator
.void
setConfigurers(List<WebMvcConfigurer> configurers)
Methods inherited from class org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport
addDefaultHandlerExceptionResolvers, addDefaultHttpMessageConverters, beanNameHandlerMapping, createExceptionHandlerExceptionResolver, createRequestMappingHandlerAdapter, createRequestMappingHandlerMapping, defaultServletHandlerMapping, getApplicationContext, getArgumentResolvers, getConfigurableWebBindingInitializer, getCorsConfigurations, getDefaultMediaTypes, getInterceptors, getMessageConverters, getPathMatchConfigurer, getReturnValueHandlers, getServletContext, handlerExceptionResolver, handlerFunctionAdapter, httpRequestHandlerAdapter, mvcContentNegotiationManager, mvcConversionService, mvcHandlerMappingIntrospector, mvcPathMatcher, mvcResourceUrlProvider, mvcUriComponentsContributor, mvcUrlPathHelper, mvcValidator, mvcViewResolver, requestMappingHandlerAdapter, requestMappingHandlerMapping, resourceHandlerMapping, routerFunctionMapping, setApplicationContext, setServletContext, simpleControllerHandlerAdapter, viewControllerHandlerMapping
Constructor Detail
DelegatingWebMvcConfiguration
public DelegatingWebMvcConfiguration()
Method Detail
setConfigurers
@Autowired(required=false) public void setConfigurers(List<WebMvcConfigurer> configurers)
configurePathMatch
protected void configurePathMatch(PathMatchConfigurer configurer)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure path matching options.- Overrides:
configurePathMatch
in classWebMvcConfigurationSupport
- See Also:
PathMatchConfigurer
configureContentNegotiation
protected void configureContentNegotiation(ContentNegotiationConfigurer configurer)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure content negotiation.- Overrides:
configureContentNegotiation
in classWebMvcConfigurationSupport
- See Also:
DefaultServletHandlerConfigurer
configureAsyncSupport
protected void configureAsyncSupport(AsyncSupportConfigurer configurer)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure asynchronous request processing options.- Overrides:
configureAsyncSupport
in classWebMvcConfigurationSupport
- See Also:
AsyncSupportConfigurer
configureDefaultServletHandling
protected void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure "default" Servlet handling.- Overrides:
configureDefaultServletHandling
in classWebMvcConfigurationSupport
- See Also:
DefaultServletHandlerConfigurer
addFormatters
protected void addFormatters(FormatterRegistry registry)
Description copied from class:WebMvcConfigurationSupport
Override this method to add customConverter
and/orFormatter
delegates to the commonFormattingConversionService
.- Overrides:
addFormatters
in classWebMvcConfigurationSupport
- See Also:
WebMvcConfigurationSupport.mvcConversionService()
addInterceptors
protected void addInterceptors(InterceptorRegistry registry)
Description copied from class:WebMvcConfigurationSupport
Override this method to add Spring MVC interceptors for pre- and post-processing of controller invocation.- Overrides:
addInterceptors
in classWebMvcConfigurationSupport
- See Also:
InterceptorRegistry
addResourceHandlers
protected void addResourceHandlers(ResourceHandlerRegistry registry)
Description copied from class:WebMvcConfigurationSupport
Override this method to add resource handlers for serving static resources.- Overrides:
addResourceHandlers
in classWebMvcConfigurationSupport
- See Also:
ResourceHandlerRegistry
addCorsMappings
protected void addCorsMappings(CorsRegistry registry)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure cross origin requests processing.- Overrides:
addCorsMappings
in classWebMvcConfigurationSupport
- See Also:
CorsRegistry
addViewControllers
protected void addViewControllers(ViewControllerRegistry registry)
Description copied from class:WebMvcConfigurationSupport
Override this method to add view controllers.- Overrides:
addViewControllers
in classWebMvcConfigurationSupport
- See Also:
ViewControllerRegistry
configureViewResolvers
protected void configureViewResolvers(ViewResolverRegistry registry)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure view resolution.- Overrides:
configureViewResolvers
in classWebMvcConfigurationSupport
- See Also:
ViewResolverRegistry
addArgumentResolvers
protected void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)
Description copied from class:WebMvcConfigurationSupport
Add customHandlerMethodArgumentResolvers
to use in addition to the ones registered by default.Custom argument resolvers are invoked before built-in resolvers except for those that rely on the presence of annotations (e.g.
@RequestParameter
,@PathVariable
, etc). The latter can be customized by configuring theRequestMappingHandlerAdapter
directly.- Overrides:
addArgumentResolvers
in classWebMvcConfigurationSupport
- Parameters:
argumentResolvers
- the list of custom converters (initially an empty list)
addReturnValueHandlers
protected void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)
Description copied from class:WebMvcConfigurationSupport
Add customHandlerMethodReturnValueHandlers
in addition to the ones registered by default.Custom return value handlers are invoked before built-in ones except for those that rely on the presence of annotations (e.g.
@ResponseBody
,@ModelAttribute
, etc). The latter can be customized by configuring theRequestMappingHandlerAdapter
directly.- Overrides:
addReturnValueHandlers
in classWebMvcConfigurationSupport
- Parameters:
returnValueHandlers
- the list of custom handlers (initially an empty list)
configureMessageConverters
protected void configureMessageConverters(List<HttpMessageConverter<?>> converters)
Description copied from class:WebMvcConfigurationSupport
Override this method to add customHttpMessageConverters
to use with theRequestMappingHandlerAdapter
and theExceptionHandlerExceptionResolver
.Adding converters to the list turns off the default converters that would otherwise be registered by default. Also see
WebMvcConfigurationSupport.addDefaultHttpMessageConverters(java.util.List<org.springframework.http.converter.HttpMessageConverter<?>>)
for adding default message converters.- Overrides:
configureMessageConverters
in classWebMvcConfigurationSupport
- Parameters:
converters
- a list to add message converters to (initially an empty list)
extendMessageConverters
protected void extendMessageConverters(List<HttpMessageConverter<?>> converters)
Description copied from class:WebMvcConfigurationSupport
Override this method to extend or modify the list of converters after it has been configured. This may be useful for example to allow default converters to be registered and then insert a custom converter through this method.- Overrides:
extendMessageConverters
in classWebMvcConfigurationSupport
- Parameters:
converters
- the list of configured converters to extend
configureHandlerExceptionResolvers
protected void configureHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Description copied from class:WebMvcConfigurationSupport
Override this method to configure the list ofHandlerExceptionResolvers
to use.Adding resolvers to the list turns off the default resolvers that would otherwise be registered by default. Also see
WebMvcConfigurationSupport.addDefaultHandlerExceptionResolvers(java.util.List<org.springframework.web.servlet.HandlerExceptionResolver>, org.springframework.web.accept.ContentNegotiationManager)
that can be used to add the default exception resolvers.- Overrides:
configureHandlerExceptionResolvers
in classWebMvcConfigurationSupport
- Parameters:
exceptionResolvers
- a list to add exception resolvers to (initially an empty list)
extendHandlerExceptionResolvers
protected void extendHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Description copied from class:WebMvcConfigurationSupport
Override this method to extend or modify the list ofHandlerExceptionResolvers
after it has been configured.This may be useful for example to allow default resolvers to be registered and then insert a custom one through this method.
- Overrides:
extendHandlerExceptionResolvers
in classWebMvcConfigurationSupport
- Parameters:
exceptionResolvers
- the list of configured resolvers to extend.
getValidator
@Nullable protected Validator getValidator()
Description copied from class:WebMvcConfigurationSupport
Override this method to provide a customValidator
.- Overrides:
getValidator
in classWebMvcConfigurationSupport
getMessageCodesResolver
@Nullable protected MessageCodesResolver getMessageCodesResolver()
Description copied from class:WebMvcConfigurationSupport
Override this method to provide a customMessageCodesResolver
.- Overrides:
getMessageCodesResolver
in classWebMvcConfigurationSupport