如何解决:无法find“http://java.sun.com/jsp/jstl/core”的标记库描述符

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page import="com.library.controller.*"%> <%@ page import="com.library.dao.*" %> <%@ page import="java.util.*" %> <%@ page import="java.lang.*" %> <%@ page import="java.util.Date" %> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Return Page</title> </head> <body bgcolor="#aabcde"> <div align="right"><a href="Login.jsp">Logout</a></div> <table align="center" border="2" cellspacing="3" cellpadding="3"> <tr><th>BookID</th><th>BookName</th><th>Issuedate</th><th>returndate</th></tr> <c:forEach var="element" items="${list}"> <tr> <td>${element.getBookid}</td><td>${element.getBookname()}</td> <td>${element.getIssuedate()}</td><td>${element.getReturndate()}</td> </tr> </c:forEach> 

Eclipse IDE显示红色下划线,当我关注它时,标记是:无法findhttp://java.sun.com/jsp/jstl/core的库描述符

我也用这个

 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 

但我没有得到任何错误。

你把库中的jstl.jarjoin了吗? 如果不是这可能导致问题。 还有'tld'文件夹你有吗? 你的web.xml是如何映射的?

查看关于jstl的其他信息。

我知道这个线程现在是一岁,但经历了同样的问题,我设法通过为我的项目设置一个目标服务器来解决这个问题。

即右键单击您的项目,然后select“属性” – >“目标运行时”,然后select要在(Tomcat 6或7)上运行Web应用程序的服务器。

作为@ace提到你将需要项目中的jstl.jar,所以如果你使用maven,你可以添加这个依赖项:

 <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> 

来源: http : //mvnrepository.com/artifact/jstl/jstl/

希望能帮助到你。

编辑:大多数服务器已经有这种依赖,如果你使用maven添加它可能会导致版本冲突(如Method / ClassNotFoundException),如果你不configuration服务器,所以最好为您的项目设置一个目标服务器,作为@ willix提到。

尝试添加像这样:

 <%@taglib uri="http://java.sun.com/jstl/core" prefix="c"%> 

而不是有

 <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 

经过几次打击和审判,我用这个。 这对我有用。

 <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> 

警告:正如BalusC正确提到的,这适用于JSTL 1.0。

添加javax.servlet.jsp.jstl-api-1.2.1.jar和standard-1.1.2.jar

您可能将目标locking为没有内置JSTL支持的服务器(例如某个版本的Tomcat)。您将需要configuration您自己的JSTL标签库。

我尝试在eclipse中使用validation工具“validation”de * .jsp和* .xml文件。

“右键点击目录/文件 – > – validation”,它的工作!

使用Eclipse的Juno。

希望能帮助到你!

使用:

standard.jar

解决问题。

粘贴在你的/ WEB-INF / lib目录下的两个jar文件夹下,然后进入项目属性,然后添加jar并select这两个jar文件,然后点击Ok,Ok

standard.jar,jstl-1.0.2.jar

它没有任何关于<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

只要去项目,然后右键单击然后项目菜单 – >清理项目错误将一定删除和更新的Maven。

当您将两个必需的jar文件放在/ WEB-INF / lib文件夹(即/ WEB-INF / lib文件夹下的jstl-1.2.jar和javax.servlet.jsp)下时,它将完美工作。

希望能帮助到你。 🙂

我解决了这个问题。 在taglib下面使用

 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 

并添加jstl-1.2.jar

这应该工作

 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 

而且请让我们知道你为什么要input所有这些课程

 <%@ page import="com.library.controller.*"%> <%@ page import="com.library.dao.*" %> <%@ page import="java.util.*" %> <%@ page import="java.lang.*" %> <%@ page import="java.util.Date" %> 

我们不需要包含java.lang,因为它是默认的包。

我会再投入一个解决scheme。 我下载了一个示例应用程序,它只在这个taglib上curl。 原来,它并不关心属性的单引号。

 <%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %> 

一旦我改变了这些,并确保jstl.jar在networking应用程序,我很好去。

我在库中添加了jstl jar,并添加了它来构buildpath和部署程序集,但它的工作。 然后我简单地将我的jstl jar复制到webcontent里面的lib文件夹中,它工作。 在eclipse中的lib文件夹中默认包含到部署程序集中

你必须写作

 <%@taglib uri="http://java.sun.com/jstl/core" prefix="c"%> 

确保你有jstl-1.0&standard.jar这两个文件都放在classpath中