Перезагрузка файла свойств без перезапуска jboss - PullRequest
1 голос
/ 09 ноября 2011

Я хочу, чтобы изменения файлов свойств вступили в силу без перезапуска сервера 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 голосов
/ 09 ноября 2011

Я попытался поиграть с кодом, который вы упомянули, и указать абсолютный путь к файлу свойств. MyProperties.properties сработало

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

Не уверен, что это ошибка в библиотеке или так, как она должнаиспользоваться.

0 голосов
/ 18 ноября 2016

Нет.Это не будет работать, даже если ваш файл свойств находится за пределами jar.Ваш файл свойств будет с вашим кодом класса, упакованным в работающий код, такой как файл .EAR, и развернутым в конкретном каталоге перед тем, как вы запустите JBOSS.Любые изменения в вашем исходном файле свойств больше не будут действовать, если вы не упакуете его снова и не развернете на сервере еще раз.

0 голосов
/ 09 ноября 2011

Скорее всего, этот файл находится внутри jar-файла.Файлы свойств не сохраняют изменения внутри фляги, и поэтому FileChangedReloadingStrategy не будет запущен.

Попробуйте получить файл вне фляги.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...