私はSpring FrameworkでWildfly 10アプリケーションサーバーの下でWebアプリケーションを開発しています。私はEclipse IDEを使用します。なぜ私のプロジェクトでUTF8文字エンコーディングが正しく機能しないのですか?
解決できなかった文字エンコーディングで問題が発生しました。サーバー側からクライアント側に送信すると文字の一部が正しく表示されません。私は、データベースから値を読み込み、クライアント側に送信すると、私が使用し
私のテストString
オブジェクトは「árvíztűrő tükörfúrógép
」
- で、すべてが正常に表示されます。
- ControllerでModelAndViewオブジェクトとしてString値を設定すると、 '?? rv?zt?±r ??クライアント側からの値をPOST変数としてajaxで送信し、それをクライアント側に送り返すと、「árvízt?r?」と表示されます。 tükörfúrógép '。
私はUTF8エンコードするすべての.jspファイルを設定します。私はUTF8にすべてのMavenのモジュールのテキストファイルのエンコーディングを設定するEclipseでは<%@page contentType="text/html" pageEncoding="UTF-8"%>
。すべてのファイルはUTF8になっています。
私は何を欠席しましたか?クライアント側でString
値を取得するために他に何を設定する必要がありますか? Wildfly 10で文字エンコードを何とか設定する必要がありますか?
誰かが私を助けることができますか?さらに詳しい情報が必要な場合は、お気軽にお問い合わせください。ありがとうございました。
EDIT:文字エンコーディングをMavenプロパティとして設定すると、2番目のケースが解決されます。今私は3番目のケースで問題があります:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
デバッガでコードをステップ実行して、文字列が破損し始める場所を確認しましたか? – Thomas
トーマス:はい。サーバー側では、値がクライアント側から来たものであろうと、データベースから来たものであろうと、問題はありません。クライアント側では、私はポストにあるものを見ることができます。 – Igorovics
ボーナス情報:JSONObjectに値を書き込むときに、アクセント記号付きの文字は、サーバー側でもすでに見栄えが悪いように見えます。 – Igorovics