2

以最简单、最直接的方式,我如何连接一个/ModelAndViewDefiningException doodad 以将错误发送到我指定的视图?

应该从以下位置调用此人:org.springframework.web.servlet.ModelAndViewDefiningException

非常感谢任何人提前!

4

1 回答 1

2

如何连接 ModelAndViewDefiningException 以将错误发送到我的视图?

这是一个例外。你扔!

是 a的ModelAndViewDefiningException异常包装器ModelAndView。Spring 框架识别它,捕获它,从中提取模型和视图名称,并转发到已解析的视图,将模型暴露给视图。

...
if (someBadThingy) {
  ModelAndView modelAndView = new ModelAndView("errorView"); // "errorView" name resolved to a view by the ViewResolver of your app
  throw new ModelAndViewDefiningException(modelAndView);
}
...

您可以在处理程序处理期间随时抛出它。通常,在Controller的代码中,您通常不会抛出异常,因为 Controller 请求处理程序方法返回一个ModelAndView. 因此ModelAndView,您可以只返回ModelAndView.

但是在某些情况下您无法返回ModelAndView. 拦截器就是一个很好的例子,因为它们的方法是 ofvoidbooleanreturn。如果拦截器内部不满足某些条件,则ModelAndViewDefiningException允许您中断流程并转到错误视图。

于 2011-09-16T20:21:07.873 回答