0

実行時にxml:languageを変更する方法は?

状況は、ブラウザの言語として「EN」が選択されているとしましょう。他の一部のユーザーは、たとえば、まったく同じ言語プロパティで「FI」を使用しています。最初の男はすべて英語で表示され、2番目の男はそれに応じてフィンランド語で表示されます。2人はGoogleChromeを使用しており、どちらもコードでxml:langがデフォルトの「en-US」に設定されているため、フィンランド語のテキストは英語のように扱われます。今私が欲しいのは、フィンランド語のテキストが実行時にxml:lang設定レベルでもフィンランド語として認識されることです。そのため、xml:lang値を現在のようにハードコーディングすることはできません。また、実行時に1つのフィールドを変更できないという理由だけで、7つの言語に対して7つの異なるページを作成したくありません。

私の設定は、i18n用のstruts2とxworkを使用する設定の1つです。セットアップは、変数xml:langを持つhtmlタグを持つjspファイルであり、そのセットアップは実行時に変更する必要があります。

4

1 に答える 1

1

<html>この値をレベルで設定したいと思います。

現在のコードの例:

<html lang="en" xml:lang="en">

改訂されたコードの例:

<html lang="${action.language}" xml:lang="${action.language}">

次に、getLanguage()Struts2アクションに次のようなメソッドを追加します(すべてが継承する基本アクションに配置するだけです)。

public String getLanguage() {
    // return the appropriate language based on the user's choice
}
于 2010-11-25T15:15:07.670 に答える