日期:2014-05-17  浏览次数:20657 次

初学者的jstl配置问题,望大家指点一下啊
我用的Myeclipse版本是8.6,tomCat版本是7.0,我把jstl1.2放在lib目录中,程序是这样的:
<%@ page language="java" import="java.util.*" contentType="text/html; charset=gbk"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
  <body>
  <c:set var="name" value="weiwei" scope="request">
  </c:set>
  ${requestScope.name }
  </body>
</html>
可是在浏览器上运行的时候出现这个错误:
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:53)
谁能告诉我这是什么情况?


------解决方案--------------------
楼主
右键你的项目名:
Myeclipse >> Add JSTL Libraries
添加就行了
如果手动
拷贝.jar文件
将jakarta-taglibs-standard-1.1.1\lib\下的两个jar文件:standard.jar和jstl.jar文件拷贝到\WEB-INF\lib
拷贝.tld文件
将jakarta-taglibs-standard-1.1.1\tld\下的tld类型文件拷到"Working folder\WEB-INF\"下
然后jsp页面要加入下面声明,页面最上面
<%@ taglib uri= "http://java.sun.com/jsp/jstl/core " prefix= "c " %>
你是不是没有注意tld文件
------解决方案--------------------
web.xml
标签库的定义有些是已经在jar包中定义过了。有些没有定义的需要在web.xml中定义
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/tlds/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/tlds/fmt.tld</taglib-location>
</taglib>