TomcatでAjaxEditableLabelの文字化け
WicketでAjaxEditableLabelに2バイト文字を入力すると、文字化けが発生してしまいました。
WebApplicationの継承クラスのinitメソッドでは、
getRequestCycleSettings().setResponseRequestEncoding("UTF-8"); getMarkupSettings().setDefaultMarkupEncoding("UTF-8");
の様に設定しているにも関わらず、AjaxEditableLabelで日本語を入力すると、文字化けが発生しちゃうんです。
id:mdgw 師兄に相談してみたところ、
ことを教わりました。(不出来な後輩で恐縮です。ありがとうございます)
ちなみにserver.xmlへ行った設定は下記の通り。
これでAjaxEditableLabelで2バイト文字を入力しても化けなくなりました。
試してないのですが、もしかしたらsetResponseRequestEncodingやsetDefaultMarkupEncodingの設定でこの値も変わるかもしれません。
ちなみに文字化けの再現環境は以下の通りでした。
- jdk1.5.0_16
- Tomcat 5.5.26
一番最初のエントリが他人の褌を借りた話になってしまって、しかもこれを教わったのは半年前なんですが、「AjaxEditableLabel 文字化け」ググってみても情報が無かったようなので掲載してみました。
改めまして id:mdgw さんありがとうございます。