【发布时间】:2013-05-03 03:26:00
【问题描述】:
我想使用 @exceptionhandler 来捕获 HTTP 状态 500 - 预期的会话属性。我想在向用户显示错误的同一页面返回一条消息。
谁能指出我如何处理此异常并将消息返回到视图而不是重定向到另一个页面的示例。
这是我目前所拥有的,但是视图中的项目没有设置错误消息;
@ExceptionHandler(HttpSessionRequiredException.class)
public RedirectView handleHttpSessionRequiredException(Exception ex, HttpServletRequest request) throws Exception
{
logger.info("In the handleHttpSessionRequiredException Handler Method");
String referrer = request.getHeader("referer");
RedirectView redirectView = new RedirectView(referrer);
redirectView.addStaticAttribute("errorMessage","Execute A Query Then Retry");
return redirectView;
}
查看
<label id="errorMessage" name="errorMessage">${errorMessage}</label>
【问题讨论】:
-
我认为你可以做的是检查属性是否为空抛出一个 BusinessException ,你可以在 @ExceptionHandler 中捕获它并返回到带有添加消息的相同视图。看到这个github.com/SpringSource/spring-mvc-showcase/tree/master/src/…和stackoverflow.com/questions/2757198
标签: java spring spring-mvc