You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Hao Chen (JIRA)" <ji...@apache.org> on 2019/01/07 07:22:00 UTC
[jira] [Created] (CONFIGURATION-733) Attribute value cannot delimit
to list
Hao Chen created CONFIGURATION-733:
--------------------------------------
Summary: Attribute value cannot delimit to list
Key: CONFIGURATION-733
URL: https://issues.apache.org/jira/browse/CONFIGURATION-733
Project: Commons Configuration
Issue Type: Bug
Affects Versions: 2.4
Reporter: Hao Chen
Given the following configuration XML:
<configuration>
<header>
<result throwExceptionOnMissing="true">
<listDelimiterHandler config-class="org.apache.commons.configuration2.convert.DefaultListDelimiterHandler">
<config-constrarg config-value=","/>
</listDelimiterHandler>
</result>
</header>
<node type="test" types="a,b,c"/>
</configuration>
With the following test code:
Parameters params = new Parameters();
ReloadingFileBasedConfigurationBuilder<XMLConfiguration> builder = new ReloadingFileBasedConfigurationBuilder<XMLConfiguration>(XMLConfiguration.class);
builder.configure(params.xml().setFile(file).setListDelimiterHandler(new DefaultListDelimiterHandler(',')));
XMLConfiguration configuration = builder.getConfiguration();
List<String> types = configuration.getList(String.class, "node[@types]");
// result WRONG -- returns ["a,b,c"]
org.junit.Assert.assertEquals(types.size(), 3);
I just couldn't find any way to get the attribute value as a comma-delimited list...
In general, the default behavior change for list delimiter is a big headache while we are trying to upgrade to commons-configuration2...
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)