1

現在、ユーザーが選択した言語に基づいてロケールを設定する JSF アプリケーションを使用しています。彼はドロップダウンを取得し、英語を選択するときにロケールを en などに設定します。これは、ResourceBundle からロードされた言語文字列だけでなく、数値形式でも非常にうまく機能します。

したがって、en の場合、英語の単語と a が得られます。小数点として。fr の場合、フランス語と , を小数点として取得します。

ただし、現在、この Web サイトでは、数値形式の小数点として常に , を使用する必要があります。そこで、ロケールを fr に固定したままにしようと考えていました。

それでも、ユーザーは自分の言語を変更できる必要があります。では、ロケールを変更せずに JSF で別の言語をロードすることは可能ですか?

4

2 に答える 2

2

フォーマットには特別な解決策が必要なので、フォーマッタを上書きする方が良い解決策かもしれません。JSF はデフォルトの数値形式の置き換えをサポートしていると思います。

于 2012-08-14T13:08:46.337 に答える
1

そこで使用しているタグのlocale属性を明示的に指定するだけです。<f:convertNumber>

例えば

<f:convertNumber ... locale="fr" />

または何かのような

<f:convertNumber ... locale="#{app.defaultNumberLocale}" />

UIViewRoot#getLocale()あなたが経験しているように、それ以外の場合は実際にデフォルトになります。

以下も参照してください。

于 2012-08-14T13:27:16.520 に答える