Я пытаюсь перезагрузить пакет ресурсов во время выполнения. В моем приложении после входа в систему я получаю свойства, вызывающие <f:loadBundle basename="messages" var="msg" />
. Вызов сделан в моем шаблоне базы приложений, и все работает хорошо. Файл свойства находится в разделе MyApp/resources/Перезагрузка ресурса без перезагрузки сервера JSF2 - Jboss 7
Следующий шаг - это попытка обновить чтение ресурса в блоке свойств, которое у меня есть в моем userHome/resources. Что я делаю вызов моего управляемый компонента:
File file = new File(System.getProperty("user.home")+ "/resources/");
URL[] urls = {file.toURI().toURL()};
ClassLoader loader = new URLClassLoader(urls);
ResourceBundle.clearCache(Thread.currentThread().getContextClassLoader());
ResourceBundle.clearCache();
bundle = ResourceBundle.getBundle("messages",Locale.ENGLISH, loader);
я не получил никаких ошибок и boundle получил правильные значения, но любые изменения занимают места в моем приложении. Кто-то может сказать мне, как перезагрузить пакет и показать новые значения, полученные мной из внешних файлов? Ясный кэш, похоже, не работает, я избавляюсь от причины faces-config.xml для jsf2 ... Надеюсь, кто-то может помочь.
одно, чтобы загрузить пакеты программно. Другое дело было бы, чтобы они обновлялись при их обновлении. Полагаю, вы стремитесь ко второму? –
Да, я хотел бы обновлять их каждый раз, когда я вношу изменения в файлы свойств, которые у меня есть под пользователем/ресурсами – aegis80