commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Selg <alexander.sel...@gmail.com>
Subject Re: [configuration] attributes in xml config don't apply to all entries of a list
Date Thu, 31 May 2012 06:30:56 GMT
Hi Oliver,

thanks for your clarification.

>From my point of view it would be more straightforward assigning
attributes to all nodes of a list. Otherwise the list feature seems
incomlete to me.
Our lists are a bit longish so I was very happy that I can avoid
repeating tags in our config.xml.

Does it make sense to create an improvement issue?

Otherwise I think I would prefer to read the list as string and parse
it as a list by myself ...

Thank you for your help,
Alex

2012/5/30 Oliver Heger <oliver.heger@oliver-heger.de>:
> Am 30.05.2012 16:53, schrieb Alexander Selg:
>
>> Hi,
>>
>> I'm using a different implementation of the DefaultExpressionEngine. I
>> use attributes in our applications conf.xml to filter the result of
>> DefaultExpressionEngine.query().
>> So I have a config file like
>>
>> <configuration>
>>        <someStrings environment="test">str1,str2,str3</someStrings>
>>        <someStrings environment="prod">str4,str5,str6</someStrings>
>> </configuration>
>>
>> In the query() methode of MyExpressionEngine I want to access these
>> attributes
>>
>>        List<ConfigurationNode>  queryResults = super.query(root, key);
>>        for (ConfigurationNode queryResult : queryResults) {
>>            attributes = queryResult.getAttributes();
>>            ...
>>        }
>>
>> The problem is that I only get the attributes for the first node - the
>> subsequent nodes don't have any attributes set.
>> So for "str1" I'll get the attribute environment="test", for "str2"
>> and "str3" I'll get no attributes.
>>
>> Is that a bug?
>> Am I doing something wrong?
>>
>> I'm using commons-configuration 1.8 with jdk1.6
>>
>> Any help would be appreciated,
>> Alex
>
>
> Not sure whether this behavior is somewhere documented, but it is indeed
> intended. There are unit tests for XMLConfiguration which test that
> attributes are only assigned to the first node of a list.
>
> I guess, there are different use cases. When the code was developed a
> decision had to be taken. At that time assigning attributes only to the
> first node seemed to be straightforward.
>
> If you have any control over your XML, I would recommend to avoid
> comma-separated properties with multiple values. In XML lists can be defined
> in a natural way by just repeating tags. Then the association between
> attributes and values nodes is obvious.
>
> HTH
> Oliver
>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
>> For additional commands, e-mail: user-help@commons.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message