4

JSFを使用していて、メッセージバンドルを使用したいので、以下のXML構成を追加しました。今、誰かがそれらを使用したときに彼らが持っていたいくつかの経験を書くことができるかどうか疑問に思います。ページ上のすべての翻訳を含む1つの大きなプロパティファイルを用意するのがベストプラクティスですか。そうであれば、キーにどのように名前を付けますか。そうでない場合は、複数のリソースファイルがあると思いますが、それらをどのように構成しますか?ページのどの部分にメッセージを提供しますか?-そして命名慣行はありますか?

これは主観的なものかもしれませんが、とにかく私にとって貴重な洞察になる可能性があります。

<application>
    <resource-bundle>
        <base-name>com.myapp.blah</base-name>
        <var>msgs</var>
    </resource-bundle>
</application>
4

1 に答える 1

4

言語ごとに1つずつ、単一のファイルアプローチから始めることをお勧めします。それがあなたがそれを分割するかもしれないよりも、あなたがもはやもはや管理することができないレベル、何千もの行に成長するならば。

次に、次のテンプレートを使用してページを国際化できます。

<f:view locale="#{userBean.userLocale}">

また、選択したコンポーネントを有効にして、ユーザーが切り替えることができる言語を保持することができます。

FacesContext.getCurrentInstance().getViewRoot().setLocale(locale);

およびfaces-config.xml:

    <application>        
        <locale-config>            
            <default-locale>pt-br</default-locale>
            <supported-locale>en</supported-locale>            
        </locale-config>

        <resource-bundle>
            <base-name>com.myapp.blah.ApplicationResources</base-name>
            <var>msg</var>
        </resource-bundle>
...

次に、言語ごとに1つのファイルが必要です。

ApplicationResources.properties
ApplicationResources_en.properties
ApplicationResources_pt_BR.properties

于 2012-04-13T20:45:28.180 に答える