URLパラメーターではなく、ロケールをアクションに変更できるかどうか疑問に思っています...
実際、認証アクションがあり、認証されたユーザーに関して、適切なロケールに切り替えたいと考えています。
私は試した :
session.put("WW_TRANS_I18N_LOCALE", "my_locale")
また
session.put("WW_TRANS_I18N_LOCALE", new Locale("my_locale"))
しかし、まだ何も...
何か案が ?
ロケール情報をパラメーターとしてアクションに渡す必要があります。このようなもの:
<s:url id="url" action="your-action" >
<s:param name="request_locale" >${your-locale}(e.g. de, en, etc.)</s:param>
</s:url>
更新 1
ここにリンクがあります。カスタム Struts 2 ActionMapper でロケールを設定する方法
これを試すこともできますが、うまくいくかどうかはわかりません。このスニペットをアクション クラスに追加します。ActionContext.getContext().setLocale(new Locale("your-locale"));
また、使用することができます:
ServletActionContext.getContext().setLocale(new Locale("en","US"));