▹ JAVA 기반 프레임워크/JSF (JavaServer Faces)
JSF web.xml 서블릿, 필터 맵핑
기록원장
2024. 2. 17. 04:20
반응형
모든 J2EE 웹 애플리케이션은 web.xml 이라는 배치설명자에 의해 설정되어야 하고, 이는 JSF도 마찬가지다.
JSF의 경우, FacesServlet이 메인 서블릿이기 때문에 web.xml에 FacesServlet을 등록할 필요가 있다.
기본적으로 servlet태그에 서블릿을 지정해 주고 servlet-mapping에서 패턴을 정해주는 식으로 JSF맵핑을 해준다.
당연한 이야기지만 지정한 서블릿에 대한 맵핑을 하는 것이기 때문에 <servlet> 태그 안의 <servlet-name>과 <servlet-mapping> 태그의 <servlet-name>는 동일해야 한다.

필터의 경우, 기술적으로 서블릿에서 수행할 수 있는 모든 작업 수행할 수 있기 때문에 <servlet-mapping> 대신
<filter> 태그로 필더 클래스를 지정 후 <filter-mapping> 태그로 맵핑하는 경우도 있다.

물론 <servlet-mapping>과 <filter-mapping> 각각의 패턴을 정해 둘 다 사용하는 것도 가능한데 이경우 필터가 먼저 실행되고 서블릿이 최종처리된다.
◆ JSF맵핑 가능여부
JSF 맵핑 | <servlet-mapping> | <filter-mapping> | 비고 |
OK | 〇 | ✕ | |
OK | ✕ | 〇 | |
OK | 〇 | 〇 | 처리순서: 필터 ⇒ 서블릿 |
NG | ✕ | ✕ |
글 내용 중 잘못된 부분이 있거나, 첨부하실 내용이 있으시면 댓글로 남겨주세요. 공부하는데 많은 도움이 됩니다.
-- 기억의 유효기간은 생각보다 짧다. --
반응형