0

ロケールを検出するための適切なアプローチを見つけようとしています。

私がフォローしているアプローチは次のとおりです。

1-以下のコードを持つ 1 つの言語 Bean

<code>
if(!classUtil.isNullObject(FacesContext.getCurrentInstance())){
            return FacesContext.getCurrentInstance().getExternalContext().getRequestLocale();
        }
        return selectedLanguage;//Return default language in case its not possible to detect the language
</code>

2- 親フロー内で Bean 定義を作成する

<code><var name="languageBean" class="com.decitysearch.classified.LanguageBean"/></code>

3-xhtmlで同じものを使用する

<code>
<f:view locale="#{languageBean.findDefaultLocale}">
<f:loadBundle var="messageResource" basename="MessageResource_en"/>   
</code>

ここでの私の質問は次のようになります。2-ロケールを検出するための良い方法はありますか

あなたの思考プロセスは高く評価されています。

4

1 に答える 1

0

Spring を使用している場合は、これらの Bean を宣言し、パラメーター「locale=xx」で URL を呼び出してロケールを変更します。

<bean id="localeResolver"
    class="org.springframework.web.servlet.i18n.SessionLocaleResolver">
    <property name="defaultLocale" value="es" />
</bean>

<mvc:interceptors>
    <mvc:interceptor>
        <mvc:mapping path="/**" />
        <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
    </mvc:interceptor>
</mvc:interceptors>
于 2013-12-03T09:52:51.723 に答える