[ http://issues.apache.org/struts/browse/SHALE-201?page=all ]
Gary VanMatre resolved SHALE-201:
---------------------------------
Fix Version: 1.0.3
Resolution: Fixed
Assign To: Gary VanMatre
Another great idea Ryan. The SymbolsTestCase contains a couple examples.
Thanks for the help.
> Support 2 pass symbol replacement
> ---------------------------------
>
> Key: SHALE-201
> URL: http://issues.apache.org/struts/browse/SHALE-201
> Project: Shale
> Type: Improvement
> Components: Clay
> Versions: Nightly
> Environment: Linux, Windows
> Reporter: Ryan Wynn
> Assignee: Gary VanMatre
> Fix For: 1.0.3
>
> The following illustrates a use case for 2 pass symbol replacement.
> Client.html
> <span id="id1" jsfid="clay" clayJsfid="Template.html" name="#{person.name}"
> email="#{person.address.email"} />
> Template.html
> <body>
> Name: <span id="id2" jsfid="tree" value="@name"/>
>
> Email: <span id="id3" jsfid="tree" value="@email"/>
> </body>
> Custom component
> <component jsfid="tree" extends="panelGroup">
> <element renderId="1" jsfid="outputText">
> <attributes>
> <set name="value" value="@value"/>
> </attributes>
> </element>
> <validator jsfid="lengthValidator">
> ...
> </validator>
> </component>
> Currently the nested attribute [value] inside of the 1st child of tree does
> not realize symbol replacement because the symbol
> @value actually points to another symbol, either @name or @email depending on
> the context.
> With 2-pass symbol replacement this attribute would ultimately get the value
> #{person.name} or #{person.address.email}
> Span (id1) - > clay
> Symbol Table = { @name=#{person.name} , @email==#{person.address.email}
> }
> Span (id2) -> tree
> Symbol Table = { @name=#{person.name} , @email==#{person.address.email}
> , @[EMAIL PROTECTED]
> tree Child 1
> Symbol Table = { @name=#{person.name} , @email==#{person.address.email}
> , @[EMAIL PROTECTED]
> Such that EvalSymbol(@value) -> EvalSymbol(@name) ->
> #{person.name} , instead of @name
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/struts/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira