@Configuration(proxyBeanMethods = false)@Configuration(proxyBeanMethods = false)
@ConditionalOnWebApplication(type = Type.SERVLET)@ConditionalOnWebApplication(type = Type.SERVLET)
@ConditionalOnClass({ Servlet.class, DispatcherServlet.class })@ConditionalOnClass({ Servlet.class, DispatcherServlet.class })
// Load before the main WebMvcAutoConfiguration so that the error// Load before the main WebMvcAutoConfiguration so that the error
View is available View is available
@AutoConfigureBefore(WebMvcAutoConfiguration.class)@AutoConfigureBefore(WebMvcAutoConfiguration.class)
@EnableConfigurationProperties({ ServerProperties.class, WebMvcPro@EnableConfigurationProperties({ ServerProperties.class, WebMvcPro
perties.class })perties.class })
publicpublic classclass ErrorMvcAutoConfigurationErrorMvcAutoConfiguration { {
// 当用户没有自定义错误处理ErrorAttributes时,默认生成DefaultErrorA// 当用户没有自定义错误处理ErrorAttributes时,默认生成DefaultErrorA
ttributes错误处理组件ttributes错误处理组件
@Bean@Bean
@ConditionalOnMissingBean(value = ErrorAttributes.class, s@ConditionalOnMissingBean(value = ErrorAttributes.class, s
earch = SearchStrategy.CURRENT)earch = SearchStrategy.CURRENT)
publicpublic DefaultErrorAttributes DefaultErrorAttributes errorAttributeserrorAttributes()() { {
returnreturn newnew DefaultErrorAttributesDefaultErrorAttributes();();
} }
@Bean@Bean
@ConditionalOnMissingBean(value = ErrorController.class, s@ConditionalOnMissingBean(value = ErrorController.class, s
earch = SearchStrategy.CURRENT)earch = SearchStrategy.CURRENT)
publicpublic BasicErrorController BasicErrorController basicErrorControllerbasicErrorController(ErrorAttr(ErrorAttr
ibutes errorAttributes,ibutes errorAttributes,
ObjectProvider<ErrorViewResolver> errorVie ObjectProvider<ErrorViewResolver> errorVie
wResolvers)wResolvers) { {
文档被以下合辑收录
评论