问题
${header[“User-Agent”]}在html中无效
分析
<web-app>的版本约束
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
- 当属性isELIgnored是true时,表示忽略EL表达式,即当出现 ${…}会原样输出,不会进行EL表达式运算;当属性isELIgnored是false时,则EL表达式通过容器来决定如何解析。
- isELIgnored的值取决于web应用部署描述符的版本。IDEA使用自带MAVEN是默认建立的是servlet2.3的webapp。使用Servlet2.4的描述符的JSP页面默认是使用Servlet2.3或者更早的版本JSP页面的isELignore默认是为true,即不解析EL表达式。
解决
方法一
在每个jsp页面增加声明
<%@page isELIgnored="false" %>
方法二
将<WEB-INF>下的web.xml文件删除,或重命名后放入<webapp>目录下