错误提示:The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar
错误原因可能有两个:
第一种:
由于JSTL1.0和JSTL1.1的声明语句不一样。
JSTL 1.0 的声明是:
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core " %>
JSTL1.1 的声明是:
<%@ taglib prefix="c" uri=http://java.sun.com/jsp/jstl/core %>
如果你使用的JSTL库和你在JSP中的声明不一致。就会报上面提到的Exception。
另外,要注意的是:Tomcat是先引用"TOMCAT_HOME/shared/lib"下面的库,再引用web项目下面的"WEB-INF/lib'的库。
还有就是,jBuilder自带库中的JSTL有两个配置,一个是"JSTL"(1.0),一个是"JSTL1.1"(1.1),注意在做项目的时候别引用错了。
还有一个技巧是:如何判断JSTL的两个库文件(standar.jar和jstl.jar)的版本?展开jar文件在"META-INF"目录下的MANIFEST.MF文件,其中"Specification-Version"指名的就是版本号。
第二种:
WEB-INF下的lib文件没有jstl.jar和standard.jar,在网站下载相应版本的jar包加到里面。
加上jar包后
把 taglib prefix="c" uri="http://java.sun.com/jstl/core"
改为:taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"
感觉好坑的啊。。。。。