我在 i18n struts 应用程序中使用资源包。在大多数页面上,资源包会选择正确的语言(语言是通过 i18n struts 拦截器设置的)。并且在一个页面上,资源包没有选择正确的语言。我不知道为什么。这就是为什么我想知道 ResourceBundle 的语言环境来自哪里。
在框架中调用动作会导致资源包出现一些问题吗?
好的,在一个 struts 动作中,我有以下内容:
ResourceBundle resourceBundleProcess = null;
try {
resourceBundleProcess = ResourceBundle
.getBundle(BpmUiConstantes.BPMUI_PROCESS_CONF_FOLDER + "/"
+ caseType);
LOG.info("Locale used by bundle : " + resourceBundleProcess.getLocale()) ;
}
通过 url,我将语言环境设置为“en”,例如通过指定 request_locale=en。i18n struts 拦截器应该获取语言环境并使用它。虽然,我不确定是否会影响 ResourceBundles。我认为确实如此,因为在我的其他页面上,文本以正确的语言显示。但是这里的 LOG 出于某种原因显示“fr”(浏览器也是英文的)。