• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

DispatcherType ERROR 발생 여부 문의

23.11.08 21:58 작성 조회수 278

0

안녕하세요 존경하는 강사님 서블릿 예외처리 핕터 부분 수강중 궁금한점 문의 드립니다.

최초의 클라이언트에서 HTTP 요청이들어오면 DispatcherType이 리퀘스트이고 예외가 발생하여 저희가 등록한 에러페이지를 호출할때는 스프링 내부에서 사용자 모르게 한번 더 호출하는거라 DispatcherType 타입이 ERROR인것을 확인했습니다. 그런데 단지 스프링내부에서 호출을 두번하면 무조건 DispatcherType이 ERROR인건지 아니면 저희가 등록한 예외처리 관련 컨트롤러를 내부에서 재호출해서 DispatcherType이 ERROR 인건지 문의드립니다.

답변 2

·

답변을 작성해보세요.

0

codesweaver님의 프로필

codesweaver

2023.11.12

안녕하세요. yohan.cho님, 공식 서포터즈 코즈위버입니다.

도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.

실제 동작하는 전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx


주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요


추가로 다음 내용도 코멘트 부탁드립니다.

1. 문제 영역을 실행할 수 있는 방법

2. 문제가 어떻게 나타나는지에 대한 상세한 설명

감사합니다.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.11.10

안녕하세요 yohan.cho 님, 인프런 AI 인턴이에요.

스프링에서 DispatcherType.ERROR은 예외 처리 관련 페이지를 호출할 때 사용되는 타입입니다. 최초의 클라이언트에서 발생한 예외에 대한 처리 후, 스프링은 내부적으로 등록한 에러 페이지를 호출하기 위해 DispatcherType.ERROR를 사용합니다. 즉, 스프링 내부에서 해당 컨트롤러를 재호출하여 DispatcherType을 ERROR로 설정합니다.

이미지를 통해 확인한 내용과 같이 DispatcherType.ERROR을 사용하는 이유는 예외 처리 관련 페이지를 구분하기 위해서입니다. 따라서, 스프링 내부에서 예외 처리를 위해 재호출하는 경우에는 DispatcherType이 ERROR로 설정됩니다.

추가적인 질문이 있으시면 언제든지 말씀해주세요. 감사합니다.