2014-01-24 3 views
1

Как изменить языковой стандарт по умолчанию struts2, указанный в файле struts.properties как struts.locale?Изменение стандартного языкового стандарта struts2

по умолчанию локали «ан», и мне нужно, чтобы изменить его на «en_US»

Я попытался следующие

<constant name="struts.locale" value="en_US" /> 

в моем файле struts.xml.

+0

А потом что случилось? –

+0

Я все еще получаю локали только как «en». Но мне нужно изменить его, потому что у меня есть файлы с именами, такими как message-resources_en_US.properties. – harry

+0

Как вы его оцениваете? –

ответ

0

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

Структура Struts2 устанавливает языковой стандарт по умолчанию на основе языковых настроек браузера, то есть он ищет заголовок запроса Accept-language, и если его не найти, перейдите к свойствам struts для этого.

Итак, если вы хотите изменить локаль en_US, вы должны установить ее в параметрах браузера, задав в качестве предпочтительного языка.

Если вы хотите изменить это поведение, вы можете написать перехватчик, который установит необходимый языковой стандарт для ActionContext. Здесь ссылка на API http://struts.apache.org/maven/struts2-core/apidocs/com/opensymphony/xwork2/ActionContext.html#setLocale(java.util.Locale) Не забудьте поставить ваш перехватчик в стек перехватчиков в файле struts.xml.

Учебник о создании собственных перехватчиков: http://www.tutorialspoint.com/struts_2/struts_interceptors.htm

Надежда, это поможет кому-то.

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