2013-04-03 4 views
1

Я работаю над проектом Struts-1, который поддерживает два языка English и Turkies. Для отображения сообщения мы используем функцию InternationalizationStruts-1, поэтому у нас есть два файла свойств (ApplicationResources_en.properties и ApplicationResources_en.propertie) для хранения сообщений, которые должны отображаться для пользователя.Вопрос о интернационализации и локализации Apache strats

Для английского версии ApplicationResources_en.properties ключа и значения является

farequoteautomatic.entry-area.gen.emd.fareamount=Fare Amount 

Для Turkies версии ApplicationResources_tr.properties ключа и значения является

farequoteautomatic.entry-area.gen.emd.fareamount=Ücret Miktarı 

Все работает отлично, когда Locale является английским означает, что когда мы используем английскую версию. Для этого ключа есть правильный и ожидаемый, который равен Fare Amount.

Но когда Locale меняется когда при попытке попробуйте использовать turkey версия нет нет правильный выход. Он отображает специальные символы, а не фактический символ, записанный в файле fıle.

В файле с файлом свойств Ücret Miktarı, но вне этого в браузере находится �cret Miktar�.

Примечание: Я проверил мой браузер Firefox установлен по умолчанию для Unicede (UTF-8) кодирования и мы имеем header.jsp который encluded на каждой странице, в которой мы имеем метатекли как <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Я не понимаю, что я делаю неправильно здесь. Пожалуйста, помогите мне.

+0

Просто догадка язык пакет для другого языка. –

ответ

0

mkyong url Вслед, он говорит.

For UTF-8 or non-English characters, for example Chinese , you should encode it with native2ascii tool.

С помощью native2ascii tool

farequoteautomatic.entry-area.gen.emd.fareamount=Ücret Miktarı 

Преобразованный в

farequoteautomatic.entry-area.gen.emd.fareamount=\ufeff\u00dccret Miktar\u0131 

И в браузере я получил желаемое из положить, что это Ücret Miktarı

1

проверить кодировку браузера и установить его в UTF-8

попробовать этот в web.xml

<filter> 
<filter-name>CharacterEncodingFilter</filter-name> 
<filter-class>bt.gov.g2c.framework.common.CharacterEncodingFilter</filter-class> 
<init-param> 
<param-name>requestEncoding</param-name> 
<param-value>UTF-8</param-value> 
</init-param> 
</filter> 
+0

в header.jsp у нас есть метатег, который устанавливает кодировку для каждой страницы

+0

no check your browser encoding it установлен UTF-8 или нет. Если это хром goto tools-> Encoding – Biswajit

+0

Я отредактировал свой вопрос, который может ответить на ваш вопрос. –

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