JSTL错误:File "/WEB-INF/c.tld" not found
小弟在本机上恢复一个JSP网站,环境是XP sp2+tomcat6.0+JDK1.5+mysql4.1
但是环境已经搭好,经测试tomcat,mysql都已OK,但是部署这个网站时候出现下面的错误:
HTTP Status 500 -
--------------------------------------------
type Exception report
message
description
The server encountered an internal error () that prevented it from fulfilling this request.exception
org.apache.jasper.JasperException: File "/WEB-INF/c.tld" not found
我在网上找了一个下午,但是收获甚微,只是确定好像是JSTL的问题,可能因为版本冲突,但是不确定
请问那位大哥能对小弟指教一下,不甚感激!
------解决方案--------------------
------解决方案--------------------你Tomcat重启过吗?重启的时候有报错吗?
另外你的网站在别的地方成功运行过吗?
你最好看看Tomcat的错误日志,可能找得到问题
------解决方案--------------------从你的 web.xml 看你是用 Servlet 2.4。在Servlet 2.4下你不应该直接引用文件系统的路径来作为标记库的uri,而是需要使用定义在tld文件里面的uri
请用文本编辑器打开你的 c.tld , 搜索 <uri>, 你应该可以找到这样一行:
<uri>http://java.sun.com/jsp/jstl/core</uri>
把你出错的那行 <%@ taglib uri="/WEB-INF/c.tld" prefix="c"%> 换成
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
试试,看看出错信息有没有变化。
------解决方案--------------------
<%@ taglib uri="WEB-INF/c.tld" prefix="c"%> 这样试试可能是你的前面加了一个/
------解决方案--------------------对于c标签,你最好用<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
------解决方案-------------------- <taglib>
<taglib-uri>/tags/c</taglib-uri>
<taglib-location>/WEB-INF/tlds/c.tld</taglib-location>
</taglib>
<%@ taglib uri="/tags/c" prefix="c"%>
------解决方案--------------------首先lib里面必须要有2个包,standard.rar,jstl.rar。再看有没有标签库如c.tld等等。。
在页面可以这样使用。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
我想应该没有问题。
我的异常网推荐解决方案:The server encountered an internal error () that prevented it from fulfilling this request.,http://www.aiyiweb.com/java-web/317.html