JDK1.6およびTomcat6.1でJSF2.0を使用しています
ライブ Web セッションが停止しないように、サーバーを再起動せずにプロパティ ファイルの値 (JSF リソース バンドルによって読み込まれる) を更新する必要があります。
JDK1.6 で可能ですか。以下の clearCache コードを試しましたが、機能しませんでした。
ResourceBundle bundle = ResourceBundle.getBundle("Label");
String s = bundle.getString("profile.firstName");
out.println("Value before: %"+ s);
ResourceBundle.clearCache(Thread.currentThread().getContextClassLoader());
bundle = ResourceBundle.getBundle("Label");
s = bundle.getString("profile.firstName");
out.println("Value after: {}"+s);
誰かが前に同じことを試みましたか。
アップデート
以下は、リソースバンドルのリロードの問題を解決していないようです
ResourceBundle.clearCache(Thread.currentThread().getContextClassLoader());
ApplicationResourceBundle applicationBundle = ApplicationAssociate.getCurrentInstance().getResourceBundles().get("Label");
Field field = applicationBundle.getClass().getDeclaredField("resources");
field.setAccessible(true);
Map<Locale, ResourceBundle> resources = (Map<Locale, ResourceBundle>) field.get(applicationBundle);
resources.clear();
何か不足していますか?