使用EL表達式時,遇到了頁面直接顯示“time: ${requestScope.time}”,不解析的情況。
查找資料原因是:在默認情況下,Servlet 2.3 / JSP 1.2是不支持EL表達式的,而Servlet 2.4 / JSP 2.0支持。
剛好我使用Maven創建的webapp項目,web.xml里就是2.3版本的:
<!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> </web-app>
修改為2.4版本就可以正常解析了:
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> </web-app>
處理方法二:
在.jsp頁面加上指令:<%@ page isELIgnored="false" %>