环境:JDK 1.6 + Tomcat 7.0 + Eclipse IDE for Java EE Developersjsp代码:<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<f:view></f:view>
</body>
</html>
编译后:
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsf/core cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:410)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:117)
org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:311)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:152)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:410)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1425)
org.apache.jasper.compiler.Parser.parse(Parser.java:138)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:242)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:198)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:373)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.23 logs.

解决方案 »

  1.   

    tomcat7.X版本不能把jstl这个包放到tomcat7中,需要手动复制进去,你可以看看你tomcat过去的项目中一定没有jstl这个包
      

  2.   

    1、“不能放入”、“手动复制进去”,到底是放还是不放啊?
    2、“过去的项目”是指的workspace中的项目吗?
    3、默认是没有jstl包,我是将tomcat\webapps\examples\WEB-INF\lib中的jstl.jar复制到Workspace\test1\WebContent\WEB-INF\lib中。
      

  3.   

    就是把jstl的包手动放入  tomcat\webapps\你的项目\WEB-INF\lib中,应该就行了,不行在我给说说
      

  4.   

    将这个<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
    修改成<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core_rt"%>
      

  5.   

    关键是你使用的Servlet版本和jstl版本是什么,这跟容器支持的版本是两回事。检查你的web.xml里的<web-app>看版本,并检查你的jstl是1.1还是1.2的如果是2.5的话,<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>如果2.3的话<%@taglib prefix="c" uri="http://java.sun.com/jsp/core" %>一般情况下最好不要用7楼说的_rt