0

国際化を追加する必要がある既存の Spring/GWT アプリケーションがあります。私の理解では、Spring の「ResourceBundleMessageSource」を使用して、ユーザーの場所に応じて適切な messages_* ファイルを自動的に選択できます。このチュートリアルに従ってみましたが、アプリケーションに文字列をフランス語で表示させることができないようです。現状では、messages_en_US.properties と messages_fr_FR.properties の 2 つのファイルを src/main/resources/i18n フォルダーに追加し、applicationContext.XML に以下を追加しました。

<bean id="messageSource"
    class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basename">
        <value>classpath:i18n/messages</value>
    </property>
</bean>

<bean id="localeChangeInterceptor"
    class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
    <property name="paramName" value="lang" />
</bean>

<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" >
    <property name="interceptors">
       <list>
        <ref bean="localeChangeInterceptor" />
        </list>
    </property>
</bean>

1) 追加の構成/グルー コードが必要かどうか、2) Redhat サーバーで言語/ロケールをフランス語に設定せずにこれを簡単にテストできるかどうか疑問に思っていますか?

4

2 に答える 2

0

お使いのブラウザーは、Accept-Header で "fr" 言語タグのみを送信する可能性があります。Spring はフォールバックの問題で有名なので、messages_fr_FR.properties を messages_fr.properties としてコピーする必要があるかもしれません。

フォールバックを構成するにはいくつかの方法があるに違いないので、messages_en.properties を使用する必要があります (他の英語ロケールでアプリケーションを試してください...)。現時点で解決策を探すのにうんざりしています。

于 2013-10-31T20:08:24.930 に答える