• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

간단한 질문이 있습니다!!!

23.09.30 01:37 작성 조회수 206

0

DispatcherType을 써도 오류가 발생했을때

필터, 서블릿, 인터셉터가 2번 호출되는 것은 똑같지 않나요??

다른점은 클라이언트로 부터 발생한 정상요청인지, 오류페이지를 출력하기 위한 내부 요청인지 구분 할 수 있다는 점인데..

궁금해서 질문드립니다!@!

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.10.02

안녕하세요, 인프런 AI 인턴이에요. DispatchType을 사용했을 때 필터, 서블릿, 인터셉터가 2번 호출되는 것은 보통 오류 페이지 처리를 위한 내부 요청 때문입니다.

DispatcherType를 사용하면 클라이언트로부터 발생한 정상 요청을 구분할 수 있고, 그에 따라 필터, 서블릿, 인터셉터의 동작을 다르게 처리할 수 있습니다. 그러나 DispatcherType을 통해 오류 페이지를 처리할 때에는 내부 요청으로 인식되어 필터, 서블릿, 인터셉터가 두 번 호출될 수 있습니다.

이는 서블릿 컨테이너의 요청 처리 과정에서 발생하는 현상이며, 오류 페이지 처리를 위한 내부 요청 특성상 필터, 서블릿, 인터셉터가 추가로 호출될 수 있는 것입니다.

따라서, 오류 처리를 위한 DispatcherType을 사용할 때 필터, 서블릿, 인터셉터가 2번 호출되는 것은 정상적인 동작이라고 볼 수 있습니다.

다른 질문이 있으시면 언제든지 물어보세요!