Spring mvc使用不了jstl 或者 Spring mvc不解析jstl
最近我搭了一个maven的springMVC的项目发现前端怎么也识别不了我的jstl,我查询了很多方法,导致这种情况的原因有很多
1、jar引用不对,maven中的正确导入可用的jar
<dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> <scope>runtime</scope> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency>
主要是引入jstl.jar和standard.jar jar包引用不对,会导致这种情况
2、web.xml配置文件格式问题,
我用的是maven项目自己配置的web.xml,其格式如下
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_5.dtd" > <web-app >
需改为
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" 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">
3、tomcat默认是支持el表达式的,所以el和jstl冲突也会导致jstl表达式用不了
//页面引入jstl <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> //屏蔽el <%@ page isELIgnored="false" %>
最终发现我的出现在第三种上面,但是在一些特殊的指令上还 是不行,于是乎—-
4、还不行的话,估计是tomcat,估计是5.5以下的,换成tomcat6.0以上的版本,我换了以后就可以了。。。这一系列问题。。。头疼