2011-09-15 4 views

답변

1

ModelAndViewDefiningException을 연결하여 내보기에 오류를 보내려면 어떻게해야합니까?

예외입니다. 너는 그것을 버린다!

ModelAndViewDefiningExceptionModelAndView의 예외 래퍼입니다. Spring 프레임 워크는 모델을 인식하고 그것을 잡아 내고, 모델을 추출하고, 모델에서 이름을보고, 모델을 뷰에 노출시키는 해결 된보기로 전달합니다.

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

언제든지 처리기 처리 중에 던질 수 있습니다. 일반적으로 컨트롤러 요청 처리 메서드가 ModelAndView을 반환하기 때문에 Controller 코드에서 일반적으로 예외를 throw하지 않습니다. 따라서 ModelAndView이 포함 된 예외를 throw하는 대신 ModelAndView을 반환하면됩니다.

그러나 ModelAndView을 반환 할 수없는 경우가 있습니다. Interceptors은 그 방법이 void 또는 boolean으로 반환되기 때문에 좋은 예입니다. 인터셉터 내부에서 어떤 조건이 충족되지 않으면 ModelAndViewDefiningException을 사용하여 흐름을 중단하고 오류보기로 이동할 수 있습니다.

관련 문제