问题:在jsp页面中使用el表达式取值,取不到值,但是使用jsp中嵌套java代码可以取到值,对应代码如下:
解决: 只要在 jsp中 头文件中写上 : <%@page isELIgnored="false" %>
从结果来看,jsp中嵌套java代码可以取值成功,那么后台赋值成功,应该是前台页面通过el表达式取值失败。
解决方法:
在使用el表达式的jsp中配置:
<%@page isELIgnored="false" %>
- 1
大意就是:
如果isELIgnored是true,当EL表达式出现在文本或者标签属性时被忽略。如果是false,则EL表达式通过容器来决定如何解析,只有属性有返回表达式被设置为true或者表达式是一个延迟表达式时不解析。
isELIgnored的值取决于web应用部署描述符的版本。使用Servlet2.4的描述符的JSP页面默认是解析EL表达式,即表达式有效。这默认提供了大部分应用想要的情况。而使用Servlet2.3或者更早的描述符的JSP页面默认是忽略EL表达式的,即不解析EL表达式,这样就提供了向后兼容性。