属性文件重新加载而不重启jboss

时间:2011-11-09 06:33:31

标签: java jboss

我希望属性文件更改生效,而不必重新启动jboss服务器。

我的代码就像这样

import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.commons.configuration.reloading.FileChangedReloadingStrategy;

public class Myclass{
private static PropertiesConfiguration configure;
try {
        configure = new PropertiesConfiguration("MyProperties.properties");
        configure.setReloadingStrategy(new FileChangedReloadingStrategy());
        configure.setAutoSave(true);
    } catch (ConfigurationException e) {
        e.printStackTrace();
    }
  }

但是在重新启动服务器之前这不起作用。

任何人都可以帮助我吗?

谢谢!!!

3 个答案:

答案 0 :(得分:0)

这个文件很可能是在一个jar文件中。属性文件不会在jar中保留更改,因此不会触发FileChangedReloadingStrategy

尝试将文件放在jar外面。

希望它有所帮助。

答案 1 :(得分:0)

我尝试使用您提到的代码并给出属性文件MyProperties.properties的绝对路径

configure = new PropertiesConfiguration("C:\\MyProperties.properties");

不确定这是否是库中的错误或其使用方式。

答案 2 :(得分:0)

没有。即使你的属性文件在jar之外,它也不会工作。您的正确文件将与您的类代码打包在一个正在运行的代码中,例如.EAR文件,并在启动JBOSS之前部署在特定于服务器的目录上。对原始属性文件的任何更改都将不再起作用,除非您再次打包并再次部署在服务器上。