Как изменить локаль по умолчанию в GWT - PullRequest
13 голосов
/ 21 января 2010

Наше приложение должно быть исправлено для использования локали eb-GB. А пока я добавил:

<extend-property name="locale" values="en_GB"/>

Но это означает, что GWT создает премуации для обоих. Как настроить GWT на eb-GB по умолчанию? Или как убрать default из компиляции?

Ответы [ 6 ]

11 голосов
/ 13 марта 2012
<extend-property name="locale" values="sl_SI"/>
<set-property name="locale" value="sl_SI" />

сначала добавляет к набору доступных локалей.

затем устанавливает значение по умолчанию.

если по умолчанию не установлена ​​та же локаль, что и для добавленных, gwt создаст перестановки для добавленной локали и локали по умолчанию.

9 голосов
/ 21 января 2010

Как насчет:

<set-property name="locale" value="en_GB" />
8 голосов
/ 06 ноября 2012

Я играю здесь с археологом, но согласно GWT документация о интернационализации вы должны использовать запасной вариант свойства для "локали" вместо принудительного использования самой локали.

Итак, в вашем модуле XML (файл .gwt.xml) вы должны иметь:

<!-- Let say you app supports the english language, independent of country -->
<extend-property name="locale" values="en"/>
<!-- Now set the fallback locale so your app will be in british english by default, Sir -->
<set-property-fallback name="locale" value="en_GB"/>

<set-property name="locale" value="en_GB"/> только установит en_GB в качестве локали вашего приложения и не создаст перестановку для других локалей, которые вы определили.

Надеюсь, это поможет.

3 голосов
/ 21 января 2010

Вы можете установить значение по умолчанию с помощью аннотации: @DefaultLocale("en_GB") на интерфейсах, расширяющих интерфейсы i18, например, com.google.gwt.i18.client.Messages.

Например:

@DefaultLocale("en_GB")
public interface MyMessages extends com.google.gwt.i18.client.Messages {
  ...

Я не уверен, что это действительно решает вашу проблему, но, похоже, способ установить значение по умолчанию. Смотри также http://code.google.com/p/google-web-toolkit/wiki/I18nAnnotations

2 голосов
/ 21 января 2010

См. это .

Вам нужно указать локаль на странице хоста, например, так ...

<meta name="gwt:property" content="locale=x_Y">

Вы также можете написать свой собственный поставщик недвижимости.

1 голос
/ 10 июля 2011

Вот лучший хак (см. Второй комментарий).

Обратите внимание, что только этот код

<set-property name="locale" value="en_GB" />

заставляет LocaleInfo.getLocaleNativeDisplayName(localeName) возвращать пустую строку для локали по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...