先检查声明是否正确
JSTL 1.0 的声明是:
<%@ taglib prefix=“c” uri="http://java.sun.com/jstl/core " %>
JSTL1.1 和1.2的声明是:
<%@ taglib prefix=“c” uri=http://java.sun.com/jsp/jstl/core %>
经分析
在pom中引入jstl1.2依赖成功后,jsp页面依然无法解析jstl的引用地址uri的资源
<!-- JSTL 标签库 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
那么肯定是tomcat服务器处理有问题,首先要检查的就是tomcat的依赖包,果然tomcat的lib下没有相关的jstl的jar包
链接(standard-1.1.jar和JSTL1.1.jar和JSTL1.2.jar,推荐使用1.2版本的jstl):https://pan.baidu.com/s/18ahPqqfjCnk5BuJhRBJtzQ
提取码:7k7k
思路有了解决起来就易如反掌了
1 jstl1.1版本由2个必要包构成:standard-1.1.jar和JSTL1.1.jar;而jstl1.2版本只有一个必要包JSTL1.2.jar,还要注意tomcat6以下的版本应该不支持JSTL1.2.jar
2 如果用1.1版本,将standard-1.1.jar和JSTL1.1.jar复制到tomcat的lib包下
3 同理,如果用jstl1.2版本只需要将jstl1.2.jar放入tomcat/lib下
补充:如果不能正确解决上述这个问题,那么开发中,修改的jsp页面就无法在前端浏览器上实时更新,开发遇到这种情况还是很恶心的!
总结:解决方案是①在pom中依赖jstl1.2依赖②tomcat/lib下引入jstl1.2的jar包③注意细节,区分jst1.0/1.1/1.2的区别