以最簡單,最直接的方式,如何連接/ ModelAndViewDefiningException doodad以將錯誤發送到我指定的視圖?如何連接ModelAndViewDefiningException將錯誤發送到我的視圖
這傢伙應該被稱爲:org.springframework.web.servlet.ModelAndViewDefiningException提前
很多感謝的人!
以最簡單,最直接的方式,如何連接/ ModelAndViewDefiningException doodad以將錯誤發送到我指定的視圖?如何連接ModelAndViewDefiningException將錯誤發送到我的視圖
這傢伙應該被稱爲:org.springframework.web.servlet.ModelAndViewDefiningException提前
很多感謝的人!
如何連接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的代碼中,通常不會拋出異常,因爲Controller請求處理程序方法返回ModelAndView
。因此,不要在內部拋出異常,只需返回ModelAndView
即可。
但有些情況下,您不能退回ModelAndView
。 Interceptors就是一個很好的例子,因爲他們的方法是void
或boolean
返回。如果攔截器內部沒有滿足某些條件,則ModelAndViewDefiningException
允許您中斷流程並轉至錯誤視圖。