사용자 도구

사이트 도구


springframework:mvc:handlerexceptionresolver

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
springframework:mvc:handlerexceptionresolver [2014/10/31 17:38]
kwon37xi
springframework:mvc:handlerexceptionresolver [2018/02/14 08:32]
kwon37xi
줄 35: 줄 35:
         andView.setViewName("error");         andView.setViewName("error");
         return andView;         return andView;
 +    }
 +    // JSON 에러 내면서 Http Status Code 변경
 +    @ExceptionHandler(Exception.class)
 +    @ResponseBody
 +    public ResponseEntity<SomeErrorObject> exceptionHandler(Exception e) {
 +        // org.springframework.http.HttpStatus 를 참조할 것.
 +        HttpStatus httpStatus = HttpStatus.INTERNAL_SERVER_ERROR;
 +        SomeErrorObject errorObject = new SomeErrorObject();
 +
 +        return new ResponseEntity<>(errorObject, httpStatus);
     }     }
 } }
 </code> </code>
 +
 +===== 주요 Spring MVC Exception에 대해 오버라이드 하지 말 것 =====
 +  * ''ControllerAdvice''나 ''ExceptionHandler''를 override 했을 경우 Spring이 기본으로 지정한 에러코드가 아닌 다른 에러코드로 응답 코드가 내려갈 수도 있다.
 +  * [[https://doanduyhai.wordpress.com/2012/05/06/spring-mvc-part-v-exception-handling/|Spring MVC part V: Exception handling | DuyHai's Java Blog]]
 +  * 주요 Exception들에 대해 올바른 응답 코드가 내려가도록 처리한다.
 +  * [[https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/support/DefaultHandlerExceptionResolver.html|DefaultHandlerExceptionResolver]]를 보면 각 예외별 응답 코드 기본값을 알 수 있다.
 +
 +===== 참조 =====
 +  * [[http://www.baeldung.com/exception-handling-for-rest-with-spring|Error Handling for REST with Spring]]
 +
springframework/mvc/handlerexceptionresolver.txt · 마지막으로 수정됨: 2021/07/14 12:49 저자 kwon37xi