-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
ExceptionResolver와 BasicErrorController의 분기점을 모르겠습니다.
22.04.30 01:35 작성 조회수 134
0
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)
[질문 내용]
공통 상황
- WAS -> Servlet -> Controller (예외 발생)
- @ExceptionHandler를 사용한 API 예외 처리 애플리케이션
- BasicErrorController를 사용한 HTML 오류 페이지 처리 애플리케이션
질문
Q1. BasicErrorController와 ExceptionResolver 모두 적용된 프로그램 흐름이 궁금합니다. ExceptionResolver와 BasicErrorController의 분기점을 모르겠습니다.
Q2. Accept: text/html HTTP 요청이 들어왔을 때, BasicErrorController는 내부 호출(WAS -> Servlet -> BasicErrorContoller)이 발생하는지, 아닌지 궁금합니다.
Q3. Accept: text/html HTTP 요청이 들어왔을 때, @ResponseStatus 값에 관계없이 무조건 500 HTML 에러 페이지를 반환하고 있습니다. @ExceptionHandler와 BasicErrorContoller의 조합이 어떻게 가능한지 모르겠습니다. 강의 코드에서 MyHandlerExceptionResolver를 없앴습니다.
감사합니다.
답변을 작성해보세요.
0
0
김영한
지식공유자2022.05.04
안녕하세요. olo pipi님
Q1: ExceptionResolver를 사용하면 이미 예외 처리가 완료되어버리기 때문에 서블릿 까지 오류가 올라가지 않습니다. BasicErrorController는 서블릿 까지 오류가 올라간 다음에 내려와야 동작합니다. 따라서 둘을 함께 사용하는 것은 아닙니다.
Q2: Q3: 예외 처리 부분을 다시 한번 복습하시길 바랍니다.
감사합니다.
답변 2