将Spring Exception传递到Thymeleaf页面

问题描述

已经添加error.html Thymeleaf模板来替换Spring上的错误页面,我如何才能访问该页面上的异常?

所以我在某些控制器上抛出了自定义异常。如何在Thymeleaf页面上访问该异常?

我希望它在全局范围内起作用,因此任何控制器引发的异常都应可访问。

解决方法

案例1:用于带有spring默认错误信息的自定义错误页面

Thymeleaf中有一些预定义的对象来显示错误信息,例如${error}${exception}等。这些对象可以在您的自定义错误页面中使用。

本文将为您提供更多帮助。 Custom Error Page with Thymeleaf

案例2:用于具有自定义错误信息的自定义错误页面

@ControllerAdvice@ExceptionHandler用于全局处理控制器中的异常。可以将某些例外添加到Modal的属性中,然后在百里香模板中进行访问。但是,请注意,该解决方案不适用于Webflux

博客显示了有关解决方案的详细信息。 Exception Handling in Spring MVC