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

Shen liang updated CONFIGURATION-567:
-------------------------------------

    Description: 
When query the nested bean declaration, the child name may contain the special 
character. So when call "HierarchicalConfiguration.configurationsAt()", the 
node name should be escaped by the expression engine first as the following

{code:java}
getConfiguration().getExpressionEngine().nodeKey(node,node.getParentNode().getName())
{code}

Call sequence to the problem code:
{noformat}
getNestedBeanDeclarations()
->nested.put(child.getName(), createBeanDeclaration(child));
   ->List<HierarchicalConfiguration> list = 
getConfiguration().configurationsAt(node.getName());
{noformat}

  was:
When query the nested bean declaration, the child name may contain the special 
character. So when call "HierarchicalConfiguration.configurationsAt()", the 
node name should be escaped by the expression engine first. 

{code:java}
getConfiguration().getExpressionEngine().nodeKey(node,node.getParentNode().getName())
{code}

{noformat}
getNestedBeanDeclarations()
->nested.put(child.getName(), createBeanDeclaration(child));
   ->List<HierarchicalConfiguration> list = 
getConfiguration().configurationsAt(node.getName());
{noformat}


> XMLBeanDeclaration.getNestedBeanDeclarations() doesn't escape the node name 
> when query the child node
> -----------------------------------------------------------------------------------------------------
>
>                 Key: CONFIGURATION-567
>                 URL: https://issues.apache.org/jira/browse/CONFIGURATION-567
>             Project: Commons Configuration
>          Issue Type: Bug
>          Components: Expression engine
>    Affects Versions: 1.10
>            Reporter: Shen liang
>
> When query the nested bean declaration, the child name may contain the 
> special character. So when call 
> "HierarchicalConfiguration.configurationsAt()", the node name should be 
> escaped by the expression engine first as the following
> {code:java}
> getConfiguration().getExpressionEngine().nodeKey(node,node.getParentNode().getName())
> {code}
> Call sequence to the problem code:
> {noformat}
> getNestedBeanDeclarations()
> ->nested.put(child.getName(), createBeanDeclaration(child));
>    ->List<HierarchicalConfiguration> list = 
> getConfiguration().configurationsAt(node.getName());
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to