原因:
当前web应用部署描述符版本较低,JSP页面默认不解析EL表达式,即表达式无效。表达式的值是否有效取决于isELIgnored,而的值取决于web应用部署描述符的版本。
解决办法:
使用较新版本的Servlet规范,在web.xml
中略过DOCTYPE
声明,因为最新的 Servlet 规范已经采用了 XML Schema 来定义部署描述符的结构。直接使用以下内容来指定部署描述符的命名空间:
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!-- 部署描述符的内容 -->
</web-app>