HTML(JSP)とJavaScript(jQuery)とJava(spring)で多言語化の検討

Java springフレームで多言語化する場合xmlに下記を設定するとURLに?langage=xxが付与されてJavaやJSPで各国用のmessages_xx.propertiesファイルから文言を取得して表示できる。

<interceptors> <beans:bean class=“org.springframework.web.servlet.i18n.LocaleChangeInterceptor”> <beans:property name=“paramName” value=“language”/> </beans:bean> <interceptors>

(URLに引数だとかっこ悪いのでInterceptorを作成して少し手間をかけるとURLに言語コードを埋め込んだ形にすることもできるらしい。)

Javascriptでブラウザの言語コードやパラメータ引数の言語コードを取得しようとすればそれなりに取得できそうだがブラウザによって挙動が変わる可能性がある。セッション情報に入れたとしてもJavaScriptで取得は難しそうなのでパラメータから取得した言語コードで各国用のJSONファイルを用意してJavaのpropertiesファイルと同様のことを実現できそうだが、両方用意するのは大変なのでjQueryのAjaxを利用してJavaから取得してJavascriptでHTMLに利用するのがいいのかなと結論づけてみた。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です