2010-11-25 2 views
0

Как изменить xml: язык во время выполнения?Как установить xml: lang значение во время выполнения?

Ситуация заключается в том, что человек предположил, что в качестве языка браузера выбран «EN». У другого пользователя есть, например, «FI» в том же языковом свойстве. Для первого парня все показано на английском, для второго - по-фински. Эти два человека используют Google Chrome и потому, что у них есть xml: lang, установленный по умолчанию для «en-US» в коде, финский текст рассматривается как на английском языке. Теперь я хочу, чтобы финский текст вовремя был признан финским и в настройке xml: lang. Таким образом, значение xml: lang не может быть жестко закодировано, как сейчас. Я также не хочу делать 7 разных страниц для семи языков только потому, что я не могу изменить одно поле во время выполнения.

Моя настройка - одна из распорок2 и xwork для i18n. Программа установки представляет собой файл jsp с тегом html с переменной xml: lang и эта настройка должна быть изменена во время выполнения.

ответ

1

Я предполагаю, что вы хотите установить это значение на уровне <html>.

Пример Текущий код:

<html lang="en" xml:lang="en"> 

Пример Пересмотренный Кодекс:

<html lang="${action.language}" xml:lang="${action.language}"> 

Затем добавьте метод getLanguage() ваших действий Struts2 (просто положить его на базовом действии, что все наследует от), таких как:

public String getLanguage() { 
    // return the appropriate language based on the user's choice 
} 
+0

Спасибо за это решение Стивен. Я добавил одну строку java.util.Locale locale = getLocale(); а затем возвращаемым значением является return locale.getLanguage(); Таким образом, учетная запись по умолчанию используется браузером по умолчанию. – mico 2010-12-01 12:34:05

Смежные вопросы