https://bz.apache.org/bugzilla/show_bug.cgi?id=58567

            Bug ID: 58567
           Summary: Error compiling EL expression with quotes - attribute
                    not properly terminated.
           Product: Tomcat 8
           Version: 8.0.27
          Hardware: PC
            Status: NEW
          Severity: major
          Priority: P2
         Component: Jasper
          Assignee: dev@tomcat.apache.org
          Reporter: amir.y...@gmail.com

The following page fails to compile in tomcat 8.0.27 and 8.0.28. It works in
all prior versions that we ever tried, including earlier versions of 8.x, and
also versions of 7.x and 6.x. It is a regression and it breaks many pages in my
application.

Here is the JSP text:

<%@ page pageEncoding="UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core"; prefix="c" %>
<%

    request.setAttribute("myAccountEmail", "t...@example.com");

%>
<c:if test="${(myAccountEmail != null) && (myAccountEmail != \"\")}">
    not empty
</c:if>

Note #1: trying to use system property org.apache.jasper.compiler.
Parser.STRICT_QUOTE_ESCAPING=false doesn't help. Although, even if it did, I
don't think it is a valid solution/workaround, as I am not in control of the
tomcat deployment - I can't tell all my clients to add this property.

Note #2: I know that I can use EL empty operator. My concern right now is with
existing code deployed at clients' sites.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to