在JSP中This absolute uri http://java.sun.com/jsp/jstl/core cannot be resolved ……的解决方法

Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV,taglibs

今天在使用JSP,引入<%@ taglib prefix=”c”
uri=”http://java.sun.com/jsp/jstl/core” %>
时报错。

报错信息:Failed to load or instantiate TagLibraryValidator class:
org.apache.taglibs.standard.tlv.JstlCoreTLV

这是因为standard.jar的原因,在tomcat的lib路径下加入standard.jar包,就解决了。


在加入此jar包之后,又报了一个错。

报错信息:java.lang.ClassNotFoundException:
javax.servlet.jsp.jstl.core.ConditionalTagSupport

这是因为还缺少jstl.jar包,同样的在tomcat的lib路径下加入jstl.jar包。

 


http://www.bkjia.com/Javabc/1191730.htmlwww.bkjia.comtruehttp://www.bkjia.com/Javabc/1191730.htmlTechArticleFailed to load or instantiate TagLibraryValidator
class: org.apache.taglibs.standard.tlv.JstlCoreTLV,taglibs
今天在使用JSP,引入 %@ taglib prefix=”c” uri=”http://java.sun

关于JSP中org.apache.jasper.JasperException:

       This absolute
uri 
http://java.sun.com/jsp/jstl/core) cannot be resolved in either
web.xml or the jar files deployed with this application

      
照着《精通JSP–Web开发技术与典型应用》敲了一段JSTL的代码。没想到报错了。为这个问题搞了一下午,坐得屁股疼……

       我的开发环境是Eclipse 3.2.0、Myeclipse 5.0、Tomcat
5.0.28(它用的是JRE1.4)和JDK1.5

       从网上搜了一下,相同的说法是:一个就是JSTL的版本问题(1.0与1.1),是否不一致。还有就是检查虚拟目录下WEB-INF目录下的lib文件夹(如果同有lib文件夹,后动创建一个)中是否有jstl.jar和standard.jar两个jar包,如果没有则把它们复制到lib下面。

      
都试了,不过报错依旧……后来又找了一下加上自己的乱搞,按照上面的改过之后,大体有两种解决方法:

       第一种就是在Eclipse的工程中导入JSTL1.1后,下载JSTL1.1  http://jakarta.apache.org/taglibs/index.html
然后解压,把*.jar和*.tld放到/WEB-INF/lib目录下。也就是将所有的jakarta-taglibs-standard-current.zip(JSTL的类库)中的.jar和.tlb放到WEB-INF目录下的lib文件夹中,JSP文件中导入<%@
taglib prefix=”c” uri=”/WEB-INF/lib/c.tld” %>,
经试验是可以的。

      
第二种是修改web.xml,加上下面的语句:

 1 <jsp-config>
 2 
 3    <taglib>
 4 
 5     <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
 6 
 7     <taglib-location>/WEB-INF/c.tld</taglib-location>
 8 
 9    </taglib>
10 
11    <taglib>
12 
13     <taglib-uri>http://java.sun.com/jsp/jstl/xml</taglib-uri>
14 
15     <taglib-location>/WEB-INF/x.tld</taglib-location>
16 
17    </taglib>
18 
19    <taglib>
20 
21     <taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri>
22 
23     <taglib-location>/WEB-INF/fmt.tld</taglib-location>
24 
25    </taglib>
26 
27    <taglib>
28 
29     <taglib-uri>http://java.sun.com/jsp/jstl/sql</taglib-uri>
30 
31     <taglib-location>/WEB-INF/sql.tld</taglib-location>
32 
33    </taglib>
34 
35 </jsp-config>

       JSP中导入<%@ taglib prefix=”c”
uri=”
http://java.sun.com/jsp/jstl/core” %>。应该就可以了……

推荐第二种^_^!

文章出自: http://hi.baidu.com/yych13/blog/item/be00ea0985f05ec93ac76376.html