Loading...

commons configurationでのメモ XMLConfigurationでの出来事

Commons Configuration - Java Configuration API

org.apache.commons.configuration.XMLConfiguration
を使用していて、下記のような例外がでた場合には、

java.lang.IllegalArgumentException: prepareAdd: Passed in key must contain a whitespace!
at org.apache.commons.configuration.tree.xpath.XPathExpressionEngine.prepareAdd(XPathExpressionEngine.java:211)
at org.apache.commons.configuration.HierarchicalConfiguration.addPropertyDirect(HierarchicalConfiguration.java:303)
at org.apache.commons.configuration.AbstractHierarchicalFileConfiguration.addPropertyDirect(AbstractHierarchicalFileConfiguration.java:112)
at org.apache.commons.configuration.HierarchicalConfiguration.setProperty(HierarchicalConfiguration.java:545)
at org.apache.commons.configuration.AbstractHierarchicalFileConfiguration.setProperty(AbstractHierarchicalFileConfiguration.java:130)


ExpressionEngineをDefaultExpressionEngineにすると例外がでなくなった。

DefaultExpressionEngine defaultExpressionEngine = new DefaultExpressionEngine();
xmlConfiguration.setExpressionEngine(defaultExpressionEngine);


プログラムの他の実装で、

XPathExpressionEngine engine = new XPathExpressionEngine();
HierarchicalConfiguration.setDefaultExpressionEngine(engine);

している箇所があったので、それが影響したようだ。
リアクション: 
java 6553430806217392776

コメントを投稿

ホーム item

このブログを検索

Random Posts

Popular Posts

Labels

ADS