Как подключить исключение ModelAndViewDefiningException для отправки ошибок в мое представление - PullRequest
2 голосов
/ 15 сентября 2011

Самым простым и понятным способом, как мне подключить / исключение ModelAndViewDefiningException для отправки ошибок в указанное представление?

Этот парень должен быть вызван из: org.springframework.web.servlet.ModelAndViewDefiningException

Большое спасибо всем заранее!

1 Ответ

1 голос
/ 17 сентября 2011

Как подключить ModelAndViewDefiningException для отправки ошибок в мое представление?

Это исключение.Вы бросаете его!

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 вы обычно не генерируете исключение, потому что методы обработчика запросов контроллера возвращают ModelAndView.Таким образом, вместо создания исключения с ModelAndView внутри, вы можете просто вернуть ModelAndView.

Но бывают ситуации, когда вы не можете вернуть ModelAndView. Перехватчики являются хорошим примером этого, потому что их методы имеют void или boolean return.Если какое-либо условие не выполняется внутри перехватчика, ModelAndViewDefiningException позволяет прервать поток и перейти к представлению ошибки.

...