2015-10-22 45 views
-1

Struts2文件applicationRessource.properties可以位于英语之外的另一个语言环境中。我知道我可以有其他一些文件,如ApplicationRessource_fr.propertiesApplicationRessource_es.propertiesApplicationRessource.properties文件是否可以位于其他本地文件中,而不是EN

我的主要问题只涉及ApplicationRessource.properties。我的默认语言是法语,我不想有像ApplicationRessource_fr.properties这样的文件。有没有办法做到这一点?

+0

当然它可以是**。但你也应该有'_fr'文件。 –

回答

0

这是我们找到的解决方案。我们使用3个文件。 ApplicationRessource.properties是法语的,ApplicationRessource_fr.properties是空的,ApplicationRessource_en.properties包含英文翻译

0

如果您想使用法语区域设置,则必须具有类似ApplicationRessource_fr.properties的文件。如果没有请求区域设置,您也可以使用默认语言文件。应用程序的基本部分包括截取所请求语言环境的拦截器,您还可以根据请求切换语言环境。

很可能动作堆栈上没有的i18n拦截器或者你没有由 JVM使用的使用区域或默认语言环境 资源包。

Essentially, the i18n Interceptor pushes a locale into the ActionContext map upon every request. The framework components that 
support localization all utilize the ActionContext locale. 
+0

目前,我有两个文件,一个是ApplicationRessource.properties,这两个文件是法文的,一个是ApplicationRessource_en.properties。我第一次连接时,我的网站是英文的。 Struts2默认使用浏览器的Locale吗?我得到了 (Locale)request.getSession等于空。通常,它应该采用默认的applicationRessource文件(谁是法语)。我对吗?为什么我的文本仍然是英文的,如何强制Struts使用我的法文文件(默认) – N3M0QC

+0

我已经尝试过ActionContext.getContext()。setLocale(localeObj); localeObj被设置为新的Locale(“fr_CA”);但它不起作用。 – N3M0QC

+0

Y需要使用两个参数构造函数。 –

相关问题