JSP中EL表达式不起作用

StrutsActionForm项目/dynaactionform.jsp中:

用户名称:${dynaForm.map.username }<br>
年龄:${dynaForm.map.age }<br> 

理想状态是输出(根据输入)

用户名称:sherry
年龄:25

但结果偏偏是:

用户名称:${dynaForm.map.username }<br>
年龄:${dynaForm.map.age }<br>

检查了代码无误后,估计是EL本身的问题。在网上找到了解决办法,在dynaactionform.jsp文件中头部加上:<%@ page isELIgnored=”false”%>。正确显示结果。故提出来备忘。之前大量的符合jsp1.2标准的项目中用到了${*},比如${1+2},但本意就是想显示${1+2},而不是3,所以应该有控制是否解析el表达式的选项,我觉得分为三个级别:

  1. 设置整个应用服务器下的所有项目是否解析el表达式(控制所有项目)
  2. 设置整个项目使用el表达式,需要在web.xml中加上 (控制一个项目)
1
2
3
4
<jsp-property-group>
<el-ignored>false</el-ignored>
</jsp-property-group>
</jsp-config>

3.设置某个jsp页面使用el表达式,需要在jsp页面加上(控制单个页面)

<%@ page isELIgnored="false"%>
本站总访问量