You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by "Robert Zeigler (JIRA)" <ji...@apache.org> on 2011/08/18 20:48:27 UTC
[jira] [Reopened] (TAP5-1605) Template parsing of expansions can't
handle map expressions
[ https://issues.apache.org/jira/browse/TAP5-1605?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Zeigler reopened TAP5-1605:
----------------------------------
re-open to set the fix version.
> 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
> Assignee: 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