SSM框架下jsp页面引用EL表达式失效
我是用El表达式取出在数据库中的单值可以直接取出,但当用 <c:forEach >循环取出多个值时失效了;
第一步:
首先确定你是否导入的JSTL包。
在项目上右键,Myeclipse–》Add JSTL Librarys
第二步:
确定用的Servlet / JSP的版本。
查看web.xml的开头部分,如果有以下内容,表示是Servlet 2.4 / JSP 2.0。
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
如果有以下内容,表示是Servlet 2.3 / JSP 1.2。
“-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN”
“http://java.sun.com/dtd/web-app_2_3.dtd”>
在默认情况下,Servlet 2.3 / JSP1.2是不支持EL表达式的,而Servlet 2.4 / JSP2.0支持。
如果是在Servlet 2.3 / JSP 1.2下,将JSP页面的开头添加如下一句代码即可。
<%@ page isELIgnored=“false” %>
或者,在WEB.XML中加入
<jsp-config>
<el-ignored>false </el-ignored>
</jsp-config>
如果是在Servlet 2.4 / JSP 2.0下,检查上面的这句代码里是否把isELIgnored设为了true,还有在web.xml中,是否将jsp-config标签里的jsp-property-group标签里的el-ignored设为了true。
以上两步都没有解决我的问题我找了好久才解决
就是在jsp里引用以下就解决问题了
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
可能是我技术太菜,一个简单的问题就搞了一天,有什么问题可以评论交流一下。。