[
https://issues.jboss.org/browse/JBWEB-144?page=com.atlassian.jira.plugin....
]
Jean-Frederic Clere resolved JBWEB-144.
---------------------------------------
Resolution: Done
JSP EL ternary operator requires space before colon
---------------------------------------------------
Key: JBWEB-144
URL:
https://issues.jboss.org/browse/JBWEB-144
Project: JBoss Web
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Tomcat
Affects Versions: JBossWeb-2.0.0.GA_CP09
Reporter: Mike Millson
Assignee: Jean-Frederic Clere
Attachments: test.jsp
JSP EL that worked on JBoss AS 4.0.5.GA does not work on EAP. For example, the following
does not work:
<c:set var="truevalue" value="true" />
<c:set var="falsevalue" value="false"/>
<c:out value="${not empty param.yes?truevalue:falsevalue}"/>
It throws this error:
2009-06-11 10:40:57,487 ERROR [org.apache.catalina.core.ContainerBase] Servlet.service()
for servlet jsp threw exception
org.apache.jasper.JasperException: /jsp/case305721.jsp(27,3) "${not empty
param.yes?truevalue:falsevalue}" contains invalid expression(s):
javax.el.ELException: Error Parsing: ${not empty param.yes?truevalue:falsevalue}
at
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
But this works with a space added before the colon:
<c:out value="${not empty param.yes?truevalue :falsevalue}"/>
This is a bug[1] that was originally fixed in Tomcat 6.0.18[2], but was subsequently
found to cause a regression[3], so was re-implemented in 6.0.19.
[
1]http://issues.apache.org/bugzilla/show_bug.cgi?id=42565
[
2]http://tomcat.apache.org/tomcat-6.0-doc/changelog.html
[
3]http://issues.apache.org/bugzilla/show_bug.cgi?id=45511
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira