- - PR -
encodeURIComponentについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-11-18 11:32
こんにちは。
現在、WEBアプリで全角文字を含むURLを使い、Ajax通信しております。 Javascript側では必ず、encodeURIComponentをURLのパラメータにかけておりますが、それでもJava側で取得した時には文字化けが起こっています。 文字コードは、HTML表示もJavascriptもUTF-8で統一しています。どうやら、Win31jとMS932のせいで、「ー」文字などが化けるようですが、具体的にどのような対策が考えられますでしょうか?Javascriptの投げる側とJavaで取得した側のどちらかで変換をかけるのはよいのですが、文字コードの変更はできません。また、Win & Mac共に動作させたいです。 環境はTomcat5.5 & webwork2 & DWR & IE6で確認しています。お分かりになりましたらよろしくお願いします。 | ||||
|
投稿日時: 2008-11-18 13:21
tomcat 文字化けでググると色々でてきますが、試しました?
| ||||
|
投稿日時: 2008-11-19 17:57
かつのりさん、ありがとうございます。
servlet.xmlで文字コードを指定しましたら、うまく行きました。 ただ、アプリ側でEncodingFilterをかけているので、そのせいでは無いと思ってたんですが・・(他Actionでは正常に認識してましたし・・)。 DWRの通信がTomcat依存と言う事ですね・・。Ajaxですし。 ありがとうございました。 | ||||
|
投稿日時: 2008-11-19 20:31
Tomcatでserver.xmlに文字コード設定を行わないと、 通常のブラウザによるGETのアクセスでも、 マルチバイトのパラメータは文字化けします。 そういう意味ではDWRの通信というよりも、 GETリクエストそのものが、 アプリケーションサーバに依存することになります。 送られてくる値をどう解釈するかはサーバ次第です。 Tomcatでもエンコーディングの設定せずに、 文字化けなしでマルチバイトのパラメータを受け取りたい場合、 POSTで送信するというのもありです。 |
1