EL表达式不支持

1、在默认情况下,Servlet 2.3 / JSP 1.2是不支持EL表达式的,而Servlet 2.4 / JSP 2.0支持。 servlets 2.4这个版本的isELIgnored默认设置 为false。所以使用web.xml里用web-app_2_4.xsd声明的时候在JSP页面不用特意声明。
如何查看Servlet / JSP的版本?打开tomcat的common/lib 目录下,有两个JAR文件: jsp-api.jar servlet-api.jar 。如果没有,那可能是你没有添加进来。解压这两个文件 ,用记事本分别打开META-INF下的MAINMEFT.MF文件。查看Implementation-Version或Specification-Version项。
2、如果web.xml 中web-app 的 version="2.5" ,也不支持EL表达式
<web-app version="2.5"
 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_2_5.xsd">
解决方法,修改XML头信息:
修改web.xml文件为(Servlet 2.4 / JSP 2.0):
<web-app version="2.4"
 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_2_4.xsd">
 
3、设置某个jsp页面使用el表达式,需要在jsp页面加上(控制单个页面)
 <%@ page isELIgnored="false"%>
 或在web.xml文件中加上下列代码,这样就不用在每个jsp页面中指定了。
 <jsp-config>
  <jsp-property-group>
   <url-pattern>*.jsp</url-pattern>
   <el-ignored>false</el-ignored>
  </jsp-property-group>
 </jsp-config>

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