Смена локали в Struts 2

 
0
 
Java
ava
Pawl | 20.01.2013, 22:04
Доброго времени суток.
Решил поковырять 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>

Как видно, тут есть ссылки для смены локали, так вот, они не работают. Т. е., если их нажать, страница перегрузится, но локаль не поменяется.
Пока не знаю, что делать, поэтому буду благодарен за любую помощь.
Kommentare (1)
ava
Pawl | 21.01.2013, 11:15 #
Вопрос снят. Вот хороший пример.
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
ava  Pawl
advanced
Absenden