본문 바로가기

IT 서비스 바라보기/Programming

[JSP2.0] web.xml 환경설정하기 (jsp-property-group)

[출처] http://www.jongsclub.com/webedit/read.jsp?table=jsp_tip&num=19




The J2EE Tutorial Addendum 버전에 추가된 내용인데.. JSP2.0 에서만  인식하는듯 합니다.

전 현재 문서만 읽고 나서 내용을 옮겨 놨을뿐 jsp1.2나 2.0에서 테스트 해보진 못했습니다.

지금 제컴퓨터가 아니라 함부로 손대볼순 없구,,, 내일 회사가믄 테스트 한번 해봐야겠습니다. ^^;



요약하자면 다음과 같은 기능 설정에 관한 내용 입니다.

1. EL evaluation 의 사용여부

2. scripting elements의 사용여부

3. page encoding 정보 지정

4. Prelude 와   coda  를 이용한 automatic include



--- EL evaluation 사용시 web.xml의 설정예

(설정을 안했을경우 디폴트 값이 어떻게 될려나요? 테스트 해보심 좋을듯. ^^*)

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

         <jsp-config>

                   <jsp-property-group>

                              <url-pattern>/template/*.jsp</url-pattern>

                               <el-enabled>true</el-enable>

                   </jsp-property-group>

         </jsp-config>

</web-app>


위 xml 설정은 해당 url 패턴의 요청시 el 사용을 설정한것입니다. false 일경우엔 컨테이너가 el 문장을 무시하고 넘어갑니다.




---- scripting elements의 사용여부

<jsp-property-group>
  <url-pattern>*.xml</url-pattern>
  <scripting-enabled>false</scripting-enabled>
</jsp-property-group> 

눈치 빠르신 분들은 이미 눈치 채셨겠지만..  scripting-enabled 의 속성이 false 일경우 url패턴에서 지정한 패턴을 접근할때 스크립틀릿, 스크립트표현식, 선언문 (declarations ) 등을 사용할수 없습니다.

위 예제에서는 xml 파일에 대해서 지정해줬지만,,  특정 디렉토리에서 스크립트 실행을 못하도록 하는데 편할거 같네요.




--- page encoding 정보 지정

<jsp-property-group>
  <url-pattern>*.jsp</url-pattern>
  <page-encoding>ISO-8859-1</page-encoding>
</jsp-property-group>


이건 별도의 설명이 필요 없을듯.. ^^*

서블릿이야 필터를 적용하면 encoding 설정을 쉽게 할수 있는데..  jsp는 여로모로 까다로웠는데..

가려운곳을 시원하게 긁어준 느낌입니다.  예전에 어떤 사이트 tip란에서 jsp 인코딩 처리를 위해 컴파일러를 디컴파일해서 컴파일시 디폴트인코딩을 변경해준뒤 다시 컴파일해서 사용한다는 글을 본적이 있는데 그분 이거 보시면 무지 좋아하실거 같네요. ^^*




---- Prelude 와   coda  를 이용한 automatic include 

요것두 무지 멋진 기능입니다. ^^*

<jsp-property-group>
  <url-pattern>/*.jsp</url-pattern>
  <include-prelude>/template/prelude.jspf</include-prelude>
  <include-coda>/template/coda.jspf</include-coda>
</jsp-property-group> 


이건 해당 url패턴 요청시 자동으로 인클루드 시켜주는 기능입니다. (시작부분 과 마지막 부분에만 적용함)
동적인 인클루드는 불가하지만 정적인 인클루드를 쉽게 적용해줍니다.
전 이거 보는순간 바로 다단계 사이트가 생각나더군요. ㅋㅋ



확장자는 왜 jspf인지 -_-? 암꺼나 써두 될려나요? 확장자에 관한 언급은 아쉽게도 안나와 있습니다.
직접 테스트 해보시길...
Prelude 와 coda를 이용한 automatic include는 j2ee튜토리얼 내의 듀크네책방 예제 2번에
잘 사용되어 있습니다. 참고해 보시면 좋겠네요. ^^*