tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Zeigler (JIRA)" <j...@apache.org>
Subject [jira] [Created] (TAP5-1605) Template parsing of expansions can't handle map expressions
Date Thu, 11 Aug 2011 00:17:27 GMT
Template parsing of expansions can't handle map expressions

                 Key: TAP5-1605
                 URL: https://issues.apache.org/jira/browse/TAP5-1605
             Project: Tapestry 5
          Issue Type: Bug
          Components: tapestry-core
    Affects Versions: 5.3
            Reporter: Robert Zeigler

5.3 introduced map support into the property expression language in the form: {'foo': 'bar'}.

Expansion parsing chokes on the syntax, however.  It uses a reluctant regular expression to
find the closing brace:

private static final Pattern EXPANSION_PATTERN = Pattern.compile("\\$\\{\\s*(.*?)\\s*}");

Which means that the use of a map inside an expansion prematurely terminates the exansion:

${echoMap({"foo": "bar"})}

The regex finds the first } and the expression evaluates as:

echoMap({"foo": "bar"

Which is clearly incorrect.

This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message