Details
Description
I'm using the DefaultConfigurationBuilder to load the config.xml which contains the configuration definitions.
DefaultConfigurationBuilder builder = new DefaultConfigurationBuilder();
builder.setFile(new File("config.xml"));
CombinedConfiguration cc = builder.getConfiguration(true);
It definitely finds the config.xml file, but it keeps throwing java.lang.NoSuchMethodError: getClass during the loading.
java.lang.NoSuchMethodError: getClass
at org.apache.commons.configuration.beanutils.BeanHelper.loadClass(BeanH
elper.java:297)
at org.apache.commons.configuration.beanutils.BeanHelper.fetchBeanClass(
BeanHelper.java:322)
at org.apache.commons.configuration.beanutils.BeanHelper.createBean(Bean
Helper.java:244)
at org.apache.commons.configuration.beanutils.BeanHelper.createBean(Bean
Helper.java:266)
at org.apache.commons.configuration.beanutils.BeanHelper.initBean(BeanHe
lper.java:176)
The config.xml file is:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!-- This is the configuration file for the Apache Commons Configuration. -->
<configuration>
<override>
<properties fileName="env.properties" throwExceptionOnMissing="true" config-name="uup" config-optional="true">
<reloadingStrategy refreshDelay="10" config-class="org.apache.commons.configuration.reloading.FileChangedReloadingStrategy"/>
</properties>
</override>
</configuration>
If I remove the reloadingStrategy element from the config.xml file, everything works properly. I am sure I have all the required commons jars in my classpath.
I read on another thread that I need to use latest version of commons-lang.
I am using commons-long 2.6 and commons-configuration 1.9. Any help is much appreciated.