jsp 页面EL 表达式不可用

在JSP2.0中,增加了EL语言,可以通过EL语言,实现获取数据,进一步将script代码从JSP页面中分离出来.EL语言给大家带来了方便,但有时,也会遇到EL表达式不能显示的情况,下面,我将列举几种EL表达式不

能显示的情况及解决方案:
1.WEB-INF/web.xml,web应用的部署描述文件引用的是servlet规范的2.3版本或更早的版本(即jsp1.2或更早),则jsp2.0表达式语言自动在web应用中停用。2.3版本xml指令和文档类型定义如下:

<!-- 2.3版本即jsp1.2  jsp2.0表达式语言自动停用 -->
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

如果是2.4版本,则为:

<!-- 2.4版本即jsp2.0 表达式语言可用 -->
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee  
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">


2.web.xml中,是否停用了jsp表达式语言

<jsp-config>
    <jsp-property-group>
        <url-pattern>/legacy/*.jsp</url-pattern>
        <el-ignored>true</el-ignored>
    </jsp-property-group>
</jsp-config>

这种情况的解决方法就是把<el-ignored>true</el-ignored>改为<el-ignored>false</el-ignored>

3.页面停用jsp表达式语言

<%@ page isELEnabled ="false"%>


解决方法:改为<%@ page isELEnabled ="true"%>


你可能感兴趣的:(jsp,EL)