commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oliver Heger (JIRA)" <>
Subject [jira] [Commented] (CONFIGURATION-595) need optional include without exception
Date Wed, 21 Jan 2015 20:43:35 GMT


Oliver Heger commented on CONFIGURATION-595:

It is correct that {{PropertiesConfiguration}} does not support optional includes.

However, you can achieve something similar - and more flexible and powerful - with {{CombinedConfigurationBuilder}}
(or {{DefaultConfigurationBuilder}} if you are still using version 1.10). This class allows
constructing a combined configuration from an arbitrary number of configuration sources. Optional
sources are supported as well. This is described in the user's guide at

Please have a look and tell us whether this fits your needs. I am a bit reluctant of extending
the include mechanism of {{PropertiesConfiguration}} because it is a specific feature of this
class and not supported by other configuration implementations - especially if combined configuration
sources offer a super set of the functionality available.

> need optional include without exception
> ---------------------------------------
>                 Key: CONFIGURATION-595
>                 URL:
>             Project: Commons Configuration
>          Issue Type: Improvement
>          Components: Expression engine
>    Affects Versions: 2.x, 1.10
>            Reporter: ryenus
> I'm trying to include a server local properties file during initialization of a distributed
> The file to be included might not exist on some of the servers, and this should be fine
in terms of our application logic.
> But this is not possible with commons configuration, inside org.apache.commons.configuration.PropertiesConfiguration.loadIncludeFile(String),
when an included file doesn't exist, namely the resolved url would be null, it always throws
a ConfigurationException. 
> See:
> This might be good to ensure configuration integrity, but looking around, for bash, ~/.bashrc
is optional, for maven, ~/.m2/settings.xml is optional, I wish there could be a way to do
the same in commons configurations.
> One way is to skip the exception, and print a warning to stderr (or some better logging
> Alternatively, an `optionalInclude` key can be introduced to serve this purpose.
> Thanks!

This message was sent by Atlassian JIRA

View raw message