2012-01-28 3 views
9

私は次の問題があります。新しい「動的Webプロジェクト」を作成し、既存のjspファイルをその中にインポートしました。Eclipse JSP:不正なデフォルトテキストファイルのエンコード

インポートされたjspファイルの1つを右クリックし、[プロパティ]> [リソース]をクリックし、[テキストファイルのエンコード]セクションの[デフォルト(コンテンツタイプによって決まる:ISO-8859-1) 。しかし、私は彼らがUTF-8にしている保証するためにインポートする前のiconvをrunnedています

$ iconv -f "ISO-8859-1" -t "UTF-8" from.jsp > to.jsp 

すべてのJSPファイルは、次のメタセットを持っています

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

誰がこの設定を変更する方法を知っていますか? TomcatはUTF-8(HTTP Content-Typeヘッダ)として正しくそれらを提供しているので、私は本当に何この影響では分からない...

答えて

13

それはそれはあなたのシェル上のコマンドのiconvファイルなどのファイルをスキャンして、正しいエンコーディングを「決定」していない機能

Eclipseのバグではありません。

解決策:JSPへ追加、次の行:

<%@ page pageEncoding="UTF-8" %> 

これが原因多くのWebコンテナに正しいを設定しているにもかかわらず、ISO-8859-1エンコードされたファイルを配信するために強制的に良いアイデアですHTMLヘッダーのコンテンツタイプ。

FYI:不整合キャラクタセットとファイルのエンコーディングは "Scheiエンコーディング"(UTF8のLatin1文字(マルチバイト)コンテキスト)のように文字に

  • をリードします。
  • あなたが "für" のようなものを持っている場合には、indeadシングルバイト文字のコンテキストで壊れたマルチバイト文字(通常はUTF-8)(Latin1の/ ISO-8859-1 ||ドイツ人のためのISO-8859-15)
です
+0

少し遅れて返信:)ありがとう、問題を解決しました!...他の返信が指し示すすべての設定がうまく見える(なぜなら、すべてがutf-8と言っているので)私はまだ失われています。 – roirodriguez

+0

こんにちは@roirodriguez遅く返事について心配することはありません、あなたを助けてうれしい..しかし、はい、このエンコーディングのものはまだ迷惑であり、めったにあなたが明白な設定を信頼するかもしれません;/ –

1

Window > PreferencesGeneral > WorkspaceWeb > JSP Files中とProject Properties > Resourceでのエンコード設定は何ですか?それらはすべて正しいものでなければなりません。

10

のWindows>設定>一般>コンテンツタイプ>テキスト> JSP>デフォルトエンコーディング> EclipseでUTF-8

+1

ありがとうございます! :-)なぜ、この単純なことのために3つの異なる場所に少なくとも3つの設定がありますか? ;-) – Udorn

+1

私の答えに記載されているように:これは日食で助けるかもしれないが、エンコーディングが不明確であるためにランタイムコンテキストで(再び)壊れる可能性があります –

0

、Windowsに行く - >設定 - >ウェブ - > JSPファイル

選択UTF-8そこの* Encoding *ドロップダウンボックスからのエンコーディングです。