You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Tran Thanh Phuong (JIRA)" <ji...@apache.org> on 2016/02/01 09:52:39 UTC
[jira] [Closed] (CONFIGURATION-616) Issue about ListHandler
[ https://issues.apache.org/jira/browse/CONFIGURATION-616?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tran Thanh Phuong closed CONFIGURATION-616.
-------------------------------------------
Resolution: Not A Problem
Please consider to enable passing the settings for children configuration instead of using the default settings.
> Issue about ListHandler
> -----------------------
>
> Key: CONFIGURATION-616
> URL: https://issues.apache.org/jira/browse/CONFIGURATION-616
> Project: Commons Configuration
> Issue Type: Bug
> Components: Build, Expression engine
> Affects Versions: 2.0-alpha1
> Reporter: Tran Thanh Phuong
> Fix For: 2.0
>
>
> This issue can be easily reproduced!
> Create a configuration files like this:
> config.xml:
> {code:xml}
> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <configuration>
> <system />
> <xml fileName="myproperties.xml" config-name="properties" />
> </configuration>
> {code}
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <properties>
> <colors.pie>#FF0000, #00FF00</colors.pie>
> </properties>
> {code}
> Java code:
> {code:java}
> DefaultExpressionEngineSymbols symbols = new DefaultExpressionEngineSymbols.Builder(
> DefaultExpressionEngineSymbols.DEFAULT_SYMBOLS)
> // Use a slash as property delimiter instead of dot
> .setPropertyDelimiter("/").create();
> DefaultExpressionEngine engine = new DefaultExpressionEngine(symbols);
> // Now create a configuration using this expression engine
> Parameters params = new Parameters();
> DefaultListDelimiterHandler listDelimiterHandler = new DefaultListDelimiterHandler(',');
> XMLBuilderParameters xmlBuilderParameters = params.xml() .setFileName("config.xml").setExpressionEngine(engine) .setListDelimiterHandler(listDelimiterHandler);
> dcb = new CombinedConfigurationBuilder().configure(xmlBuilderParameters);
> try {
> config = dcb.getConfiguration();
> } catch (ConfigurationException e) {
> // TODO Auto-generated catch block
> e.printStackTrace();
> }
> {code}
> I could not retrieving values of colors.pie using:
> config.getStringArray("colors.pie");
> The result is a single string "#FF0000, #00FF00" instead of an array of Strings.
> However, using Java code to add a new property like this:
> config.addProperty("my.test.value", "#FF0000, #00FF00"),
> I can get an array as the result of :
> config.getStringArray("my.test.value");
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)