не меняет язык с помощью LocaleAction - PullRequest
0 голосов
/ 14 февраля 2012

Я использую стойки 1.3 и хочу сделать локализацию. вот что я делаю:

  1. в struts-config.xml:

    <form-bean name="English" type="org.apache.struts.action.DynaActionForm">
        <form-property name="language" type="String" initial="en" />
    </form-bean>
    <form-bean name="Russian" type="org.apache.struts.action.DynaActionForm">
        <form-property name="language" type="String" initial="ru" />
    </form-bean>
    
    <action-mappings>
        <action path="/English" name="English"
            type="org.apache.struts.actions.LocaleAction">
        <forward name="success" path="/index.jsp" />
    </action>
    <action path="/Russian" name="Russian"
            type="org.apache.struts.actions.LocaleAction">
        <forward name="success" path="/index.jsp" />
    </action>
    

    <controller processorClass="org.apache.struts.tiles.TilesRequestProcessor" />
    
  2. на jsp.page

    <html:link action="/Russian">
        <bean:message key="jsp.header.russian"/>
    </html:link>
    <html:link action="/English">
            <bean:message key="jsp.header.english"/>
    </html:link>
    

может я что-то не так делаю? есть идеи?
Постскриптум да, у меня есть messages_ru.properties и messages_en.properties.

1 Ответ

0 голосов
/ 15 февраля 2012

О, я нашел причину, стойки не знают этот тип как String.

<form-property name="language" type="java.lang.String" initial="en" />
...