3.1 ページ切替で日本語が文字化けする
移転しました。
AndroMDA 3.1 では、displayTagによりエンティティのリストを表示している。
これが少し問題があり、データ数が多くなった時ページ遷移するようになるのだが、ページ遷移を行なう(Prev/Nextなどをクリックすると)日本語が文字化けする。
時間をかけて調べてみるとどうやらAndroMDA 3.1が吐き出している、displayTag の requestURI の値が、jspを直接参照しているためStrutsのメッセージプロパティファイルを参照できないようなので。
なのでStrutsのメッセージプロパティが参照できるように、以下のように修正してみると、見事文字化けが解決された。
※モデルでの解決はできなかったので、白兵戦(手書き)で対応。
■変更前
<display:table name="${form.hoges}" id="row" requestURIcontext="false" requestURI="${pageContext.request.requestURI}" export="true" pagesize="15" sort="list">
■変更後
<display:table name="${form.hoges}" id="row" requestURIcontext="false" requestURI='<%= request.getContextPath() + "/Hoge/Hoges.do" %>' ←←← ここをページ切替のページURLに変換★ export="true" pagesize="15" sort="list">