什么版本的jsp支持el表达式

认情况下“Servlet 2.4/JSP2.0”版本的jsp支持el,而“Servlet2.3/1.2”是不支持EL表达式的,“servlets 2.4”这个版本的“isELIgnored”认为“false”,“servlets 2.5”不支持

在JSP2.0中,增加了EL语言,可以通过EL语言,可以通过EL语言,实现获取数据,进一步将scriptlet代码从JSP页面中分离出来.

EL语言给大家带来了方便,但有时,也会遇到EL表达式不能显示的情况,下面,我将列举几种EL表达式不能显示的情况及解决方案:

1.WEB-INF/web.xml,web应用的部署描述文件引用的是servlet规范的2.3版本或更早的版本(即jsp1.2

或更早),则jsp2.0表达式语言自动在web应用中停用,注意里面的version属性应为2.4及以上版本.

如果是2.3版本,则xml指令和文档类型定义如下:

<?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版本,则为:

<?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%>

2.4版本支持el表达式,如果使用2.5版本,认el表达式是关闭的,而且上面的<%@ page isELEnabled =true%>不能用了。

那么jsp页面里应该增加<%@ page isELIgnored=false%>

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...