Доброго времени суток. Решил поковырять Struts 2 и, собственно, споткнулся на сабже. Примеры, что я находил, достаточно древние либо неработающие или неподходящие. На их основе сварганил нечто также неработающее. Но, может быть, я на верном пути, и не хватает последнего штриха для полного счастья? Посмотрите, пожалуйста, мой код, и подскажите хотя-бы, куда мне копать дальше: struts.xml| Код | <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <constant name="struts.devMode" value="true" /> <constant name="struts.i18n.reload" value="true" /> <constant name="struts.custom.i18n.resources" value="local" /> <package name="hello" namespace="/" extends="struts-default"> <action name="hello" class="study.struts2.HelloWorldAction" method="execute"> <result name="success">/HelloWorld.jsp</result> <result name="input">welcome.jsp</result> </action> </package> <package name="default" namespace="/" extends="struts-default"> <interceptors> <interceptor name="i18n" class="com.opensymphony.xwork2.interceptor.I18nInterceptor"/> </interceptors> <action name="locale" class="study.struts2.LocaleAction" method="execute"> <interceptor-ref name="i18n"/> <result name="SUCCESS">/welcome.jsp</result> </action> </package> </struts>
|
LocaleAction| Код | package study.struts2;
public class LocaleAction { public String execute() { return "SUCCESS"; } }
|
кусок кода jsp, который должен отвечать за смену локали| Код | <s:url id="localeEN" action="locale"> <s:param name="request_locale">en</s:param> </s:url> <s:a href="%{localeEN}">English</s:a>
<s:url id="localeRU" action="locale"> <s:param name="request_locale">ru</s:param> </s:url> <s:a href="%{localeRU}"><s:text name="lang_ru"/></s:a>
|
Как видно, тут есть ссылки для смены локали, так вот, они не работают. Т. е., если их нажать, страница перегрузится, но локаль не поменяется. Пока не знаю, что делать, поэтому буду благодарен за любую помощь. |