[
https://issues.apache.org/jira/browse/CONFIGURATION-467?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13132650#comment-13132650
]
Emmanuel Bourg commented on CONFIGURATION-467:
----------------------------------------------
There is a proposal to add a save method to all configurations, that would
cover your case (CONFIGURATION-311). In the meantime a solution is to enable
the auto-save feature on your file based configurations:
{code}
<configuration>
<header/>
<override>
<properties fileName="db.properties" autoSave="true"/>
<properties fileName="jms.properties" autoSave="true"/>
<xml fileName="gui.xml" autoSave="true"/>
</override>
<additional/>
</configuration>
{code}
> Unable to persist CombinedConfiguration changes to the Filesystem.
> ------------------------------------------------------------------
>
> Key: CONFIGURATION-467
> URL: https://issues.apache.org/jira/browse/CONFIGURATION-467
> Project: Commons Configuration
> Issue Type: Bug
> Components: File reloading
> Affects Versions: 1.6
> Environment: Linux java
> Reporter: raghutpk
> Labels: apache-commons-configuration, features, newbie
> Fix For: 1.8
>
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> I use a config.xml file to load multiple Configuration Sources
> Ex:
> <configuration>
> <header/>
> <override>
> <properties fileName="db.properties"/>
> <properties fileName="jms.properties"/>
> <xml fileName="gui.xml"/>
> </override>
> <additional/>
> </configuration>
> I load the config.xml and subsequently all the properties in my app to a
> CombinedConfiguration Object as follows :
> DefaultConfigurationBuilder builder = new DefaultConfigurationBuilder();
> builder.setFile(new File("config.xml"));
> CombinedConfiguration combinedConfig = builder.getConfiguration(true);
> Now I am trying to expose all the properties from all configuration sources
> using a mbean and at runtime trying to update the Properties. I wouldn't know
> though, from which source the properties came from as the
> CombinedConfiguration takes care of that abstraction, but when I do the
> following it doesn't change the persistance store(in this case the files on
> the Filesystem).
> /*combinedConfig.setProperty(Key, updatedValue);*/
> There is no save method on the combinedConfiguration class so that the
> persistance store gets updated.
> There is a save method in PropertiesConfiguration class or XMLConfiguration
> class, but I wouldn't know at runtime or inside the code which file or
> configuration source the Key belongs to, so even If I add a config-name to
> each source there is no use.
> SO wouldn't the setProperty help me update the value of the Configuration and
> persist it back to the original file. I don't know it is a bug or a feature
> it doesn't support or there is a workaround in such scenarios.
> Please advice.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira