Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
默认区域设置在Tomcat/JSF的生产环境中不起作用_Jsf_Tomcat_Internationalization_Faces Config - Fatal编程技术网

默认区域设置在Tomcat/JSF的生产环境中不起作用

默认区域设置在Tomcat/JSF的生产环境中不起作用,jsf,tomcat,internationalization,faces-config,Jsf,Tomcat,Internationalization,Faces Config,下面是我的faces config.xml文件的应用程序标记: <application> <locale-config> <default-locale>pt_BR</default-locale> </locale-config> <resource-bundle> <base-name>i18n.conteudo</base-name>

下面是我的
faces config.xml
文件的
应用程序
标记:

<application>
    <locale-config>
        <default-locale>pt_BR</default-locale>
    </locale-config>
    <resource-bundle>
        <base-name>i18n.conteudo</base-name>
        <var>i18n</var>
    </resource-bundle>
</application>

pt_BR
i18n.conteudo
i18n
在i18n文件夹中,我有两个文件:

  • conteudo.properties
  • conteudo\u en\u US.properties
  • 由于默认区域设置是pt\u BR,因此我没有创建
    conteudo\u pt\u BR.properties
    。在开发环境中,这一切都可以完美地工作

    但是,一旦我在我的生产环境中发布了它,即使用户使用的是pt_BR浏览器,并且应用程序设置为使用pt_BR locale,语言也设置为en_US。但是,如果我在production environment resources文件夹中创建
    conteudo\u pt\u BR.properties
    ,葡萄牙语将作为默认语言应用


    有人知道会发生什么吗?

    您在开发中使用的是哪个JDK/JRE版本,在产品中使用的是哪个版本?java版本“1.7.0_45”,我忘了告诉您。。。1.7.0_25是我的dev版本,1.7.0_45是prod版本。如果在dev中使用相同的版本,是否可以重现prod问题?当然,我可以尝试。但我的猜测是,我的开发机器是一个设置为pt_BR locale的Windows,而prod服务器在美国。无论如何,我认为JSF应该考虑将
    conteudo.properties
    作为默认值,对吗?