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]