【发布时间】:2017-10-18 09:33:24
【问题描述】:
我已经设法构建静态错误页面并使用此 bean 重定向到它们:
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return new EmbeddedServletContainerCustomizer() {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
if (optiuniEnvironment.equals("development")) {
ErrorPage error401Page = new ErrorPage(HttpStatus.UNAUTHORIZED, "/401.html");
ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND, "/404.html");
ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/404.html");
container.addErrorPages(error401Page, error404Page, error500Page);
}
}
};
}
但是,现在我想构建一个使用控制器功能的自定义页面。
所以在我的控制器中我有类似的东西
@RequestMapping("/404.html")
String pageNotFound(Model model, HttpServletRequest request)
{
return "404";
}
如果我遇到 HttpStatus 404 并希望重定向到它。
我相信答案是配置 DispatcherServlet,但不确定。 有任何想法吗?谢谢!
(如果可能,请使用基于java的配置,而不是xml)
【问题讨论】:
-
如果您使用的是 spring,为什么不实现异常处理程序?
-
这就是问题所在。使用什么(以及如何使用)。我来看看异常处理程序。
标签: java spring thymeleaf custom-error-pages