我在i18n struts應用程序中使用資源包。在大多數頁面上,資源包選擇正確的語言(語言通過i18n struts攔截器設置)。並且在一頁上資源包不會選擇正確的語言。我無法弄清楚爲什麼。這就是爲什麼我想知道ResourceBundle的Locale來自哪裏。ResourceBundle在哪裏獲取其語言環境?
在框架中調用動作會對資源包造成一些麻煩嗎?
確定,所以,在Struts動作我有以下幾點:
ResourceBundle resourceBundleProcess = null;
try {
resourceBundleProcess = ResourceBundle
.getBundle(BpmUiConstantes.BPMUI_PROCESS_CONF_FOLDER + "/"
+ caseType);
LOG.info("Locale used by bundle : " + resourceBundleProcess.getLocale()) ;
}
通過我通過指定request_locale = EN場景設置成「en」作爲實例的URL。 i18n struts攔截器應該獲取語言環境並使用它。雖然,我不確定是否會影響ResourceBundles。我認爲這是因爲在我的其他頁面上文本以正確的語言顯示。但是由於某些原因,這裏LOG顯示「fr」(瀏覽器也是英文的)。
向我們展示一些代碼。目前尚不清楚您是使用Struts API還是java.util.ResourceBundle API。 – 2012-07-10 15:07:22
完成,告訴我你是否需要更多信息。 – Lyth 2012-07-10 15:33:42