【问题标题】:Multiple locale GWT not working多个区域设置 GWT 不起作用
【发布时间】:2012-02-16 08:16:48
【问题描述】:

我想将我的 GWT 项目本地化到更多语言,所以我在我的 module.gwt.xml 中添加了这个部分`

<inherits name="com.google.gwt.i18n.I18N" /> 
<extend-property name="locale" values="en" />
<extend-property name="locale" values="cs" />

我创建了所有属性文件和接口,但是在加载模块后我得到了这个异常。

        00:00:02,960 [WARN] Unable to get locale properties, using defaults
    com.google.gwt.core.ext.BadPropertyValueException: Property 'locale' cannot be set to unexpected value '<failed to compute>'

知道问题出在哪里吗?因为例如当我只有一个语言环境时

<inherits name="com.google.gwt.i18n.I18N" /> 
<extend-property name="locale" values="en" />

它工作正常。 我试图添加以避免为默认语言环境生成排列,但这甚至不起作用

<set-property name="locale" value="en, cs"/>

【问题讨论】:

  • 您的资源文件是否正确命名?例如。 TextResources_en.properties、TextResources_cs.properties 等?
  • 是的,它们被命名为 Lokalizace_cs.properties,Lokalizace_en.properties 和接口被命名为 Lokalizace.java

标签: java gwt internationalization


【解决方案1】:

试试

<extend-property name="locale" values="en, cs" />

【讨论】:

  • 打扰一下,正如马塞洛所说,你试过了吗?我编辑了答案,也许它可以帮助你。在新设置下,您会收到什么错误消息?
  • 是的,我也尝试了您编辑的答案,但我总是收到相同的错误消息
  • 我认为您项目的另一部分存在问题,因为我尝试了您的代码并收到了您编写的消息。但是按照 Marcelo 和我所说的方式更正代码,错误消息就会消失。
  • 嗯,这很奇怪,我不知道问题出在哪里。
  • 是的,我正在编辑真正的 .gwt.xml,因为当我编辑 .gwt.xml 方式时,仅编译一种语言的排列效果很好
【解决方案2】:

如果页面加载时没有通过支持的机制(元标记、url 参数,请参阅http://code.google.com/webtoolkit/doc/latest/DevGuideI18nLocale.html#LocaleSpecifying 了解有关如何完成的更多详细信息)指定区域设置,它将尝试回退到默认值。因此,您必须指定一个默认的语言环境,否则会出现错误,因为如果不选择语言环境,应用程序将无法加载。

像这样设置默认语言环境(来自http://code.google.com/webtoolkit/doc/latest/DevGuideI18nLocale.html#LocaleDefault):

<set-property-fallback name="locale" value="en"/>

如果您的页面始终以默认值加载,则无需提供后备选项。但出于测试目的,您可能会发现始终使用一个会有所帮助。

【讨论】:

    【解决方案3】:

    对不起,正如 Marcelo 所说,您是否尝试过以下代码。

    <inherits name="com.google.gwt.i18n.I18N" /> 
    <extend-property name="locale" values="en_US, cs_CZ" />
    

    你能试试上面的代码吗?

    Source

    您可以找到语言环境值here

    【讨论】:

      【解决方案4】:

      我也遇到过类似的情况。我在 gwt.xml 中注释掉了语言环境以加快编译过程,这显然使除英语之外的所有语言环境都不可用。然后,当我决定在 gwt.xml 中测试多个语言环境和未注释的语言环境时,我得到了与问题中发布的相同的错误(在开发模式下)。只有当我使用所有可用的语言环境再次重新编译项目时,错误才消失。

      【讨论】:

        猜你喜欢
        • 2011-07-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多