[ 
https://issues.apache.org/jira/browse/TILES-575?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric B closed TILES-575.
------------------------

       Resolution: Invalid
    Fix Version/s: 3.0.3

Issue created in error.  Further review of code implies methodology is 
consistent.

This issue should be removed.

> Definition loading from Resolvers inconsistent
> ----------------------------------------------
>
>                 Key: TILES-575
>                 URL: https://issues.apache.org/jira/browse/TILES-575
>             Project: Tiles
>          Issue Type: Bug
>          Components: tiles-core
>    Affects Versions: 3.0.3
>            Reporter: Eric B
>              Labels: patch
>             Fix For: 3.0.3
>
>
> When definitions are initially loaded from tiles.xml, exact string matches 
> take precedence over anything resolved by a Resolver (Pattern, etc).  
> However, once a definition has been resolved by the resolver, it is cached in 
> the same definitions hashmap as the exact strings, and any implied precedence 
> is lost.
> Essentially, the first time a definition is resolved, Tiles applies a 
> specific precedence, but subsequent resolutions do not resolve following the 
> same rules.
> This can be seen in CachingLocaleUrlDefinitionDAO.getDefinition():
> {code}
>         Map<String, Definition> definitions = 
> getDefinitions(customizationKey);
>         if (definitions != null) {
>             retValue = definitions.get(name);
>             if (retValue == null) {
>                 retValue = getDefinitionFromResolver(name, customizationKey);
>                 if (retValue != null) {
>                     synchronized (definitions) {
>                         definitions.put(name, retValue);
>                     }
>                 }
>             }
>         }
> {code}
> The first time the definition is resolved using definitions.get(name), it 
> does an exact string match.  Otherwise subsen



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to