我搜索了其他几个关于此错误的线程,其中大多数线程要么具有错误的/缺少的Maven依赖关系,要么其taglib中的uri错误。
据我所知,我一切都正确,一旦到达使用JSTL的jsp,我的应用程序就会不断失败。
这是我正在使用的taglib:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
这些是我的Maven依赖项
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
据我所知,从servlet api 2.4开始,您需要我拥有的jstl 1.2,所以我真的在这里看不到问题...
编辑:我看到这个问题已被标记为重复,尽管不是。通过修复
taglib
的uri解决了引用的问题,这是在Tomcat的lib文件夹中添加jstl的一种情况 最佳答案
我在jstl-1.2.jar
文件夹中添加了tomcat/lib
。由于tomcat没有jstl jar,因此通过将作用域放在provided
上,我必须确保我的容器(tomcat)具有相关的jar。
尽管我还没有测试过,但也应该通过将jstl
jar保留在默认编译范围内来工作