First of all, please prefix the subject with the name of the component you are interest in (as I have done now) because this is a shared list. Response below.

Pavel Savara schrieb:
Hi,
When we use brackets in property key we get an exception every time.
Escaping brackets with \ doesn't help and i haven't found any mention
that brackets are special characters in documentation
we use common-configuration 1.5

Thanks for help.
I guess you use DefaultConfigurationBuilder for loading a combined configuration?

The exception is due to the fact that brackets have a special meaning in the query syntax for hierarchical configurations. (DefaultConfigurationBuilder transforms all configuration sources into hierarchical configurations, so also for properties, which are not hierarchical by default, the same rules apply.)

So far escaping brackets or other specific characters in property keys is not supported. It seems to be rather unusual to use brackets in property keys, so you may well be the first one who noticed this problem.

Unfortunately I don't have a working solution for this problem right now. I would like to ask you to create a new ticket in out bug tracking system [1], so this issue won't get lost.

Thanks
Oliver

[1] http://commons.apache.org/configuration/issue-tracking.html

Example

#property in property file
test(ef)=false

causes java.lang.NumberFormatException: For input string: "ef"
        at
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:447)
        at java.lang.Integer.parseInt(Integer.java:497)
        at org.apache.commons.configuration.tree.DefaultConfigurationKey
$KeyIterator.checkIndex(DefaultConfigurationKey.java:834)
        at org.apache.commons.configuration.tree.DefaultConfigurationKey
$KeyIterator.nextKey(DefaultConfigurationKey.java:511)
        at
org.apache.commons.configuration.tree.DefaultExpressionEngine.findNodesForKey(DefaultExpressionEngine.java:462)
        at
org.apache.commons.configuration.tree.DefaultExpressionEngine.query(DefaultExpressionEngine.java:286)
        at
org.apache.commons.configuration.HierarchicalConfiguration.fetchNodeList(HierarchicalConfiguration.java:925)
        at
org.apache.commons.configuration.HierarchicalConfiguration.setProperty(HierarchicalConfiguration.java:735)
        at
org.apache.commons.configuration.ConfigurationUtils.copy(ConfigurationUtils.java:143)
        at
org.apache.commons.configuration.ConfigurationUtils.convertToHierarchical(ConfigurationUtils.java:199)
        at org.apache.commons.configuration.CombinedConfiguration
$ConfigData.getTransformedRoot(CombinedConfiguration.java:794)
        at
org.apache.commons.configuration.CombinedConfiguration.constructCombinedNode(CombinedConfiguration.java:653)
        at
org.apache.commons.configuration.CombinedConfiguration.getRootNode(CombinedConfiguration.java:504)
        at
org.apache.commons.configuration.HierarchicalConfiguration.fetchNodeList(HierarchicalConfiguration.java:925)
        at
org.apache.commons.configuration.HierarchicalConfiguration.getProperty(HierarchicalConfiguration.java:327)
        at
org.apache.commons.configuration.CombinedConfiguration.getProperty(CombinedConfiguration.java:578)
        at
org.apache.commons.configuration.AbstractConfiguration.resolveContainerStore(AbstractConfiguration.java:1155)
        at
org.apache.commons.configuration.AbstractConfiguration.getString(AbstractConfiguration.java:1034)
        at
org.apache.commons.configuration.AbstractConfiguration.getString(AbstractConfiguration.java:1017)
www.intrade.com
The Prediction Market

ABOUT US: Intrade is The Prediction Market where members can buy and sell "shares" in financial, political, weather and other important subjects. You can trade using real US$ and you can learn to trade using virtual Intrade I$.
Intrade and the predictive information generated by our members have been featured 
on CNBC, CNN, Bloomberg, Fox, Fortune & others.

Becoming a member of Intrade gives you profit opportunity and access to the wisdom of a crowd of many thousands of people from over 120 countries.
Intrade News is available on RSS at http://www.intrade.com/news/newsRss.xml

CONFIDENTIALITY & DISCLAIMER: The information within this email is confidential 
and may be privileged. It is intended solely for party to which it is addressed.

Please notify us immediately if you received this mail in error by returning it 
to the sender and delete this copy from your system. You should also notify us 
at +353-1-6200 300.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to