我已经在JSP页面的最顶端包含了以下内容:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
我已经将JSTL JAR文件放在了WEB-INF/lib
目录中。但是,JSP仍然不能解决taglib。我得到以下错误:
找不到“”的标记库描述符http://java.sun.com/jsp/jstl/core”
我正在使用Eclipse Juno,项目结构如下所示:
URI取决于您使用的JSTL版本。对于1.0版,请使用:
http://java.sun.com/jstl/core
对于1.1(及更高版本),您需要使用:
http://java.sun.com/jsp/jstl/core
我也有同样的问题,尽管有jstl
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
我还必须添加“标准”:
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
此外,如前一篇文章所述:
找不到“”的标记库描述符http://java.sun.com/jsp/jstl/core”
根据前面的一个问题,您正在使用Tomcat 7。在这种情况下,您需要JSTL1.2。然而,这里有一个jstl。jar
文件,而JSTL 1.2清楚地包含了版本号,如soJSTL-1.2。jar
。唯一的文件名jstl。jar是JSTL 1.0和1.1的典型代表。此版本需要
标准。jar
以及包含必要TLD文件的/WEB-INF/lib
。但是,在您的特定情况下,标准。jar
在/WEB-INF/lib
中明显缺失,这正是taglib URI无法解析的原因。
要解决这个问题,必须删除错误的JAR文件,请下载jstl-1.2。jar并将其整体放入
/WEB-INF/lib
中。这就是全部。您不需要提取它,也不需要修改项目的构建路径。
不要忘记删除那个松散的
c.tld
文件。它绝对不属于那里。这确实是在互联网上其他地方的一些糟糕的教程或答案中指示的。这是一个重大误解和配置错误造成的神话。在类路径中永远不需要有一个松散的JSTL TLD文件,在以前的JSTL版本中也是如此。
如果使用Maven,请使用以下坐标:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
您还应该确保声明的
web.xml
至少符合Servlet 2.4,因此不符合Servlet 2.3或更高版本。否则,JSTL标签中的EL表达式将无法工作。选择与目标容器匹配的最高版本,并确保您没有
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<!-- Config here. -->
</web-app>
###另见:
我们的JSTL wiki页面(您可以通过将鼠标悬停在jstl上并单击info link到达那里)
- 如何安装JSTL?绝对uri:http://java.sun.com/jstl/core无法解决
我放置的uri是:“http://java.sun.com/jsp/jstl/core”。有人能解释一下为什么它会给我这个错误,我如何处理它吗?
我正在使用Tomcat 6.0,并得到相同的红色下划线,表示“找不到的标记库描述符”http://java.sun.com/jsp/jstl/core" 我有基本索引。标记库uri为的jsp文件如下: 我添加了jstl-1.2。Tomcat和我的webapp文件夹下的jar 我的网络。xml文件如下所示,其中包含上述web应用程序规范 我仍然收到标记库描述符的红色下划线错误。关于我错过了什么有什么
第1行和第2行有什么不同吗。jsp文件中的第2行没有给出任何错误,但另一个jsp中的第1行给出了错误 真正的JSTL1.0taglib使用URI http://java.sun.com/JSTL/core。 真正的JSTL 1.1/1.2 taglib使用URI http://java.sun.com/jsp/JSTL/core。 Facelets1.x使用URI http://java.sun.
这里是我的web.xml 我使用的是WebLogic服务器版本:12.1.2.0.0
问题内容: 我正在尝试遵循spring JPetStore的示例,但是在引用lib标记spring的行中的JSP页面中出现错误: 找不到“ http://www.springframework.org/tags”的标签库描述符 该库的URL是什么? 有什么方法可以避免直接依赖此URL? 提前致谢 问题答案: 下载Spring依赖项jar 将其放置到lib文件夹路径是/WEB-INF/lib/spr
问题内容: 在我的电脑中,我有一个这样定义的名称空间。该URL处的服务器指示找不到该页面。 您知道页面已移到哪里吗? Eclipse资讯 问题答案: 为了解决这个问题,这就是我所做的: