Please Enable JavaScript!
Gon[ Enable JavaScript ]

JSP 페이지에서 JSTL 에러 : According to TLD or attribute directive in tag file,

자바(JAVA)
반응형

JSP 페이지에서 JSTL 에러 : According to TLD or attribute directive in tag file,

 

개발환경 : JDK 1.5, eclipse-galileo, window XP, JSP 2.0 , Servlet 2.4 , JSTL 1.1

 

JSP 에서 JSTL 을 사용할 때 아래와 같은 에러 메시지를 만날때가 있다. 원인은

JSP, Servlet, JSTL 버전이 맞지 않기 때문에 파싱과정에서 에러가 나는 것이다.

 

Error Message: According to TLD or attribute directive in tag file, attribute items does

not accept any expressions. When working on a J2EE (Java Enterprise Edition)

web application with JSTL (JSP Standard Tag Library), this is a pretty common error.

 

JSP 에서 JSTL 을 사용하기 위해 web-app XML 스키마를 설정한다.

JSP 버전과 Servlet, JSTL 버전과의 상관관계에 대한 내용은 다음과 같다.

이 버전이 제대로 맞지 안으면 위와 같은 에러가 난다.

 

JSP 1.2 , Servlet 2.3 , JSTL 1.0

JSP 2.0 , Servlet 2.4 , JSTL 1.1

 

만약 Servlet 2.3 을 사용해서 Web Application 프로젝트를 생성했다면 아래와

같이 DTD 스키마를 설정한다.

 

<!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>
.....
</web-app>

 

Servlet 2.4 라면 아래와 같은 xml 스키마를 설정한다.

 

<web-app version="2.4"

   xmlns="http://java.sun.com/xml/ns/j2ee"

   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

.....

</web-app>

 

위 내용이 제대로 되어 있는데도 에러가 난다면 JSP 페이지 상단에 설정한

JSTL 주소를 변경해 준다. jstl/core jsp/jstl/core 로 변경해 주는 것이다.

 

<%@ taglib uri='http://java.sun.com/jstl/core' prefix='c'%> 에서

<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%> 로 바꿔준다.


반응형
Posted by 녹두장군1
,