У меня есть фрагмент кода для автоматической перезагрузки свойств конфигурации в моем приложении JHipster.
Многие аннотированные bean-компоненты @ConfigurationProperties хорошо обновлены, за исключением bean-компонента JHipsterProperties.
Компонент JHipsterProperties не известен в ConfigurationPropertiesBeans компонента Sring Cloud Context, и я не могу понять, почему.
Решение состоит в том, чтобы добавить отсутствующие компоненты @ConfigurationProperties в ConfigurationPropertiesBeans, но это всего лишь уродливый обходной путь.
public void triggerReload() throws IOException {
LOG.info("Reloading configuration");
try {
this.contextRefresher.refresh();
} catch (final BeanCreationException e) {
// DO SOMETHING USEFUL
}
LOG.info(this.jHipsterProperties.getMail().getFrom()); // <--- value is not updated
LOG.info(this.mailProperties.getHost()); // <--- value is updated
}