컨트롤러에서 응용 프로그램에서 예외를 처리하는 메서드를 처리하고 있습니다. 그래서 저는이 방법을 가지고 있습니다.@ExceptionHandler가 throw 된 예외를 처리하지 않습니다.
@Controller
public class ExceptionController {
@RequestMapping(value="/error")
@ExceptionHandler(value={Exception.class, NullPointerException.class})
public String showError(Exception e, Model model){
return "tiles:error";
}
}
그것이 내가 다른 방법 컨트롤러에서 다른 방법으로는 NullPointerException를 던져 작동하는지 그리고 I를 시도 :
boolean a = true;
if(a){
throw new NullPointerException();
}
예외는 JSP에서 인쇄 던진 후,하지만 그렇지 않은 내 showError() 메소드를 던지십시오 (중단 점을 설정 했으므로 절대 입력하지 않습니다). showError() 메서드는 예외를 catch하고 예외 유형에 따라 다른 오류 페이지를 표시합니다 (이제는 항상 동일한 오류 페이지를 표시 함). url/error로 가면 오류 페이지가 표시되므로 showError() 메서드는 정상입니다.
저는 스프링 3을 사용하고 있습니다.
무슨 문제가있을 수 있습니까?
감사합니다. 당신이 당신의 로그를 보면
예외 처리를 컨트롤러에서 분리하려는 경우 http://static.springsource.org/spring/docs/3.0 대신 HandlerExceptionResolver를 사용하십시오. x/spring-framework-reference/html/mvc.html # d0e29470 – skaffman