一、問題描述
IDEA創建SpringMVC工程,在jsp文件中EL表達式取不到值,直接將EL表達式打印了出來。
二、 原因
Intellij Idea 在創建Maven工程時選擇的webapp框架時自動導入的web.xml文件的頭可能是
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
這個web-app_2_3版本,會默認設置 <% page isELIgnored="true" %>, 即忽略EL表達式,故而會不解析EL表達式,而直接打印出來。
三、解決
1. 方法1
將文件頭修改爲
<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_3_1.xsd"
id = "WebApp_ID"
version = "3.1">
2. 方法2
在jsp文件的最上面添加一行(只會修改這一個jsp文件)
<%@ page isELIgnored="false"%>