2010-12-16 2 views
0

필자는 Filter (javax.servlet.Filter) 테스트를 작성하고 디버깅하기 시작했습니다. 그리고 html 페이지를 한 번 새로 고침하면 doFilter() 메서드가 두 번 호출된다는 것에 놀랐습니다. 아무도 왜 그런 일이 일어 났는지 설명 할 수 있습니까? 감사합니다. .Java 필터 및 호출 횟수

답변

2

정적 요소 (이미지 등)에 대해서도 필터가 호출되었을 가능성이 있습니다. 필터 경로 선언을 web.xml에서 확인하십시오.

무엇이 실제로 일어나는지 확인하는 한 가지 방법은 Fiddler 또는 Firebug을 사용하는 것입니다. 아니면 둘다.

전에 request.getRequestURL().toString()의 인쇄 값을 사용하는 또 다른 전략으로 어떤 요청이 제공되는지 확인할 수 있습니다. 원인이 환경 또는 구성의 어딘가에 숨겨져있을 수 있기 때문에 왜 2 가지 요청이 표시되는지 정확히 찾아내는 것은 어렵습니다.

+0

모든 요소가없는 단순한 html 페이지가 있지만 URL 패턴이 모든 요소에 대해 필터가 적용됩니다. /*. – jitm

+0

페이지는 다음과 같습니다 테스트 JSP 테스트 내용 – jitm

+0

예는이 favicon.ico의 호출 옳았다했지만, 내 HTML 페이지, 나는이 아이콘 ... – jitm

1

화재가 발생하여 Fiddler이되어 요청을 확인하십시오.

+0

감사 해요 없습니다 그것을 시도하려고합니다. – jitm