[
https://issues.apache.org/jira/browse/GROOVY-8041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jochen Theodorou resolved GROOVY-8041.
--------------------------------------
Resolution: Not A Bug
Assignee: Jochen Theodorou
your Template is being transformed to Groovy code and compiled. In Groovy the
expression a.b then tries to get the property b from the property a. You would
have to write this."a.b" to get it working the way you want it to
> The templating engine does not handle properly the binding parameters that
> contains dot ('.') character
> -------------------------------------------------------------------------------------------------------
>
> Key: GROOVY-8041
> URL: https://issues.apache.org/jira/browse/GROOVY-8041
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 2.4.7
> Reporter: Bence Takács
> Assignee: Jochen Theodorou
>
> The templating engine does not handle properly the binding parameters that
> contains dot ('.') character
> The below script throws an exception while the assertion passes:
> def template = new groovy.text.SimpleTemplateEngine().createTemplate('Testing
> ${a.b}')
> def params = ['a.b':'working']
> assert params['a.b']
> println template.make(params)
> "groovy.lang.MissingPropertyException: No such property: a for class:
> SimpleTemplateScript22
> at SimpleTemplateScript22.run(SimpleTemplateScript22.groovy:1)
> at Script1.run(Script1.groovy:5)"
> The issue is valid for also StreamingTemplateEngine and GStringTemplateEngine
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)