[Wicket-ja-user 70] Re: AjaxButtonでsubmitしたFormのencodeについて

Back to archive index

Toshihiro Shimizu shimi****@gmail*****
2008年 4月 15日 (火) 13:38:51 JST


清水(meso)です。

HTMLをShift_JISで作成し、HTMLのHEAD内で
<meta http-equiv="content-type" content="text/html; charset=sjis"/>
と指定し、Applicationクラスのinitメソッド内で
getRequestCycleSettings().setResponseRequestEncoding("Shift_JIS");
と指定したところ、確かに文字化けすることを確認しました。

しかし、そのページのソースをブラウザから表示してみると、
<meta http-equiv="content-type" content="text/html; charset=sjis"/>
は削除されており、ページのエンコードもUTF-8だと判定されていました。

なので、
getRequestCycleSettings().setResponseRequestEncoding("Shift_JIS");
を
getRequestCycleSettings().setResponseRequestEncoding("UTF-8");
にすると、文字化けが解消されました。

「HTMLをShit_JISに」するというのが、ブラウザでのエンコード判定もShit_JISになっていることを意味しているのか分からなかったので、もしかしたら的外れな返答かもしれませんが、よかったら試してみてください。

08/04/14 に 尾崎智仁<ozaki****@yuroy*****> さんは書きました:
> はじめまして。尾崎と申します。
>
> HTMLをShift_JISにして、AjaxButtonでsubmitすると、
> Form内のテキストフィールド内の文字を問答無用でutf-8で
> encodeして送信しているようです。
>
> サーバ側では、getRequestCycleSettings().setResponseRequestEncoding("Shift_JIS");と
> 指定しているため、Shift_JISと解釈して文字化けが発生します。
>
> どうも、wicket-ajax.jsの370行目で
> return encodeURIComponent(text);
> としている部分が問題のようです。
>
> このような現象の回避方法を、どなたかご存じないでしょうか?
> (そもそも全部utf-8で作ればいいんですけど・・・。)
>
>
> _______________________________________________
>  Wicket-ja-user mailing list
>  Wicke****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user
>
>




Wicket-ja-user メーリングリストの案内
Back to archive index