98..Etc/JSTL2009. 2. 26. 18:07
반응형

간혹 Jeus에서도 잘 돌던 JSP가 Tomcat에서 500번 에러가 나는 경우가 있는데

대부분의 경우 JSTL을 사용하는 경우이다.

대략 다음과 같은 형태다.



메시지를 자세히 보면 이런 내용이 나온다.

According to TLD or attribute directive in tag file, attribute value does not accept any expressions

요컨데 expression language를 사용할 수 없다는 것


이 내용으로 구글링을 해보면 이런 내용이 나온다.
참고: http://forum.java.sun.com/thread.jspa?threadID=683007&messageID=9423383


내용인 즉 expression을 사용하려면 JSTL 1.1을 써야한다는 내용이 많다.
Struts 1.3.8에 포함된 JSTL은 1.0.2 였기 때문에
일부러 J2EE SDK가 포함된 Sun AppServer를 다운 받아 appserv-jstl.jar 로 교체를 해봤다.
그래도 마찬가지 현상..
 
대략 글을 더 살펴보니 이런 솔루션이 나온다.
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> 를 쓰지말고
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %> 를 쓰라는 것
결과는 잘 나온다.


그런데 Jeus에서도 나오는게 Tomcat에서 저렇게 해야만 한다는게 못내 섭섭하다.
그래서 더 내용을 살펴보니
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 요걸로 하면 다 된단다.


결과는 다음과 같다.

잘 나온다. 
결국 다른 패치 없이 Tomcat 5 이상에서 Struts 1.3.8 만가지고 JSTL 사용 이상 없다.
다행다행 >ㅁ<
Posted by 1010