본문 바로가기
eclipse/web.xml 에서 <taglib> 오류

[ eclipse ] web.xml 에서 <taglib> 태그 오류

by 정윤재 2012. 1. 1.

dynamic web project 에서 자동으로 만들어 준 web.xml 에서 

<taglib> 를 추가 했을 경우 오류가 나는 경우가 있다.

새로 버전 업이 되면서 바뀐 것 같은데 

일단 web.xml 선언부를 바꾸어 줘야 한다.

원래는 
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns="
http://java.sun.com/xml/ns/javaee"
xmlns:web="
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
이렇게 되어 있다. (처음 생성시)

수정한 내역은 아래와 같다.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns="
http://java.sun.com/xml/ns/javaee"
xmlns:web="
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">

그런데 이렇게만 하면 되는 줄 알았는데 고비가 하나 더 있었다.

web.xml 에서 태그 라이브러리에 대한 tld 설정 방식이 바뀌었다.

    <taglib>
        <taglib-uri>/tld/cms_page.tld</taglib-uri>
        <taglib-location>/WEB-INF/tld/cms_page.tld</taglib-location>
    </taglib> 
가 기존의 방식이고

  <jsp-config>
    <taglib>
        <taglib-uri>/tld/cms_page.tld</taglib-uri>
        <taglib-location>/WEB-INF/tld/cms_page.tld</taglib-location>
    </taglib>
  </jsp-config>   

게 하는 것이 바뀐 방법이다. 

javaee 스펙에서 뭔가가 바뀐듯 한데 상세 사항을 찾아 보기엔 시간이 
부족하므로 일단 이렇게 설정하면 된다는 것으로 넘어가도록 하겠다.

 


댓글