JSTL EL无效表达式:javax.el.E​​LException:在Tomcat 7中

时间:2012-01-23 03:56:11

标签: jsp tomcat jstl el

我正在尝试让这个旧的JSP项目在Tomcat 7,JRE7中运行,但在项目的大多数页面中都会出现此错误。请问任何一个人可以发一些轻微的事情吗?

代码如下:

<c:set var="structClass">
    <c:if test="${empty param.class}">template</c:if>
    <c:if test="${not empty param.class}">${param.class}</c:if>
</c:set>

错误如下:

  

org.apache.jasper.JasperException:javax.servlet.ServletException:javax.servlet.jsp.JspException:org.apache.jasper.JasperException:/WEB-INF/templates/template.jsp(line:77,column: 4)“$ {empty param.class}”包含无效的表达式:javax.el.E​​LException:无法解析表达式[$ {empty param.class}]   org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:585)   org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)

1 个答案:

答案 0 :(得分:12)

这是因为表达式中的'class'关键字尝试使用

<c:if test="${empty param['class']}">template</c:if>
<c:if test="${not empty param['class']}">${param['class']}</c:if>

参考http://geekomatic.ch/2011/03/22/1300804080000.html