2013-12-20 2 views
0

일부 JSP, 서블릿 및 정적 HTML 페이지가 포함 된 소규모 웹 응용 프로그램을 작성하고 있습니다. 또한 작은 인증/권한 부여 메커니즘을 구현하기위한 필터가 있습니다. 내 질문 :웹 응용 프로그램 디렉토리 매핑

  • 어떻게 JSP의 전체 디렉토리를 다른 디렉토리에 매핑 할 수 있습니까? 예를 들면 다음과 같습니다. localhost:8080/WebAppName/pages/*.jsp과 같은 모든 URL을 localhost:8080/WebAppName/*.jsp에 매핑하고 싶습니다. 각 JSP 페이지의 web.xml에 'pages'디렉토리의 항목을 쓰지 않고 어떻게 할 수 있습니까?

  • 이러한 URL을 새로운 URL에 매핑 한 후 web.xml의 태그에 무엇을 써야합니까? 매핑 된 URL (WebAppName/*.jsp) 또는 실제 URL (WebAppName/pages/*.jsp)?

미리 감사드립니다.

+0

필요하십니까? JSP 용이 아닌 서블릿 용 맵핑 만 추가했습니다. 전쟁의 올바른 하위 디렉토리에두면 JSP가 자동으로 사용 가능해야합니다. – Gimby

답변

2

매핑이 *.xhtml (다른 확장자) 인 서블릿 또는 JSP를 만들 수 있습니다. 요청 URI를 사용하여 pages에서 해당 JSP의 동적 포함을 수행 할 수 있습니다. 서블릿에서

:

String pagesPath = "pages/" + ...; 
request.getServletContext(pagesPath).getRequestDispatcher().include(request, 
                    response); 

나는 무언가를 추가하지 않는 것이 좋은 생각이다 의심 : 당신도 모든 JSP를 (다른 확장자)을 적용해야 할 수도 있습니다. 또는 JSP의 이름을 .jspf으로 바꿉니다.

일반적으로 WEB-INF/jsp 정도에서 JSP를 사용합니다. 그래서 그들은 공개적으로 액세스 할 수 없습니다. 비슷한 기술을 사용합니다 : 서블릿에서 모델을 생성 한 다음 JSP로 뷰에 모델을 생성합니다.

관련 문제