org.springframework.web.servlet.config.annotation
Interface WebMvcConfigurer

All Known Implementing Classes:
WebMvcConfigurerAdapter

public interface WebMvcConfigurer

Defines callback methods to customize the Java-based configuration for Spring MVC enabled via @EnableWebMvc.

@EnableWebMvc-annotated configuration classes may implement this interface to be called back and given a chance to customize the default configuration. Consider extending WebMvcConfigurerAdapter, which provides a stub implementation of all interface methods.

Since:
3.1
Author:
Rossen Stoyanchev, Keith Donald, David Syer

Method Summary
 void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)
          Add resolvers to support custom controller method argument types.
 void addFormatters(FormatterRegistry registry)
          Add Converters and Formatters in addition to the ones registered by default.
 void addInterceptors(InterceptorRegistry registry)
          Add Spring MVC lifecycle interceptors for pre- and post-processing of controller method invocations.
 void addResourceHandlers(ResourceHandlerRegistry registry)
          Add handlers to serve static resources such as images, js, and, css files from specific locations under web application root, the classpath, and others.
 void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)
          Add handlers to support custom controller method return value types.
 void addViewControllers(ViewControllerRegistry registry)
          Add view controllers to create a direct mapping between a URL path and view name without the need for a controller in between.
 void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
          Configure a handler to delegate unhandled requests by forwarding to the Servlet container's "default" servlet.
 void configureHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
          Configure the HandlerExceptionResolvers to handle unresolved controller exceptions.
 void configureMessageConverters(List<HttpMessageConverter<?>> converters)
          Configure the HttpMessageConverters to use in argument resolvers and return value handlers that support reading and/or writing to the body of the request and response.
 Validator getValidator()
          Provide a custom Validator instead of the one created by default.
 

Method Detail

addFormatters

void addFormatters(FormatterRegistry registry)
Add Converters and Formatters in addition to the ones registered by default.


configureMessageConverters

void configureMessageConverters(List<HttpMessageConverter<?>> converters)
Configure the HttpMessageConverters to use in argument resolvers and return value handlers that support reading and/or writing to the body of the request and response. If no message converters are added to the list, default converters are added instead.

Parameters:
converters - initially an empty list of converters

getValidator

Validator getValidator()
Provide a custom Validator instead of the one created by default. The default implementation, assuming JSR-303 is on the classpath, is: LocalValidatorFactoryBean. Leave the return value as null to keep the default.


addArgumentResolvers

void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)
Add resolvers to support custom controller method argument types.

This does not override the built-in support for resolving handler method arguments. To customize the built-in support for argument resolution, configure RequestMappingHandlerAdapter directly.

Parameters:
argumentResolvers - initially an empty list

addReturnValueHandlers

void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)
Add handlers to support custom controller method return value types.

Using this option does not override the built-in support for handling return values. To customize the built-in support for handling return values, configure RequestMappingHandlerAdapter directly.

Parameters:
returnValueHandlers - initially an empty list

configureHandlerExceptionResolvers

void configureHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Configure the HandlerExceptionResolvers to handle unresolved controller exceptions. If no resolvers are added to the list, default exception resolvers are added instead.

Parameters:
exceptionResolvers - initially an empty list

addInterceptors

void addInterceptors(InterceptorRegistry registry)
Add Spring MVC lifecycle interceptors for pre- and post-processing of controller method invocations. Interceptors can be registered to apply to all requests or be limited to a subset of URL patterns.


addViewControllers

void addViewControllers(ViewControllerRegistry registry)
Add view controllers to create a direct mapping between a URL path and view name without the need for a controller in between.


addResourceHandlers

void addResourceHandlers(ResourceHandlerRegistry registry)
Add handlers to serve static resources such as images, js, and, css files from specific locations under web application root, the classpath, and others.


configureDefaultServletHandling

void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
Configure a handler to delegate unhandled requests by forwarding to the Servlet container's "default" servlet. A common use case for this is when the DispatcherServlet is mapped to "/" thus overriding the Servlet container's default handling of static resources.