2012-01-23 9 views
7

Próbuję uruchomić stary projekt JSP w Tomcat 7, JRE7, ale otrzymuję ten błąd na większości stron w projekcie. Czy ktokolwiek może rzucić trochę światła na to, co się dzieje?Niepoprawne wyrażenie JSTL EL: javax.el.ELException: w Tomcat 7

Kod wygląda następująco:

<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> 

Błąd wygląda następująco:

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}" contains invalid expression(s): javax.el.ELException: Failed to parse the expression [${empty param.class}] org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:585) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)

Odpowiedz

11

to z powodu 'klasy' hasła w wyrażeniu spróbuje użyć

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

refer http://geekomatic.ch/2011/03/22/1300804080000.html

+0

teraz błąd zmienia się na => org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: java.lang.NoSuchFieldError: deferredExpression –

+0

http://geekomatic.ch/2011/ 03/22/1300804080000.html Dodałem -Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK = true i to rozwiązało problem .... dzięki za link !!! –

+1

$ {something.new} także mówi ten sam błąd ze względu na słowo kluczowe 'new'. Dzięki. –