Character Encoding

Problem

Obwohl man die Facelets XHTML Seite für UTF-8 Encoding spezifiert hat, erzeugen einige hart codierte Sonderzeichen wie deutsche Umlaute den Fehler:

com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 4-byte UTF-8 sequence.

Lösung

Dies ist kein Facelets Problem, sondern bezieht sich auf ein falsches Datei Encoding in der NetBeans IDE. Man sollte durch direktes Prüfen der Datei Eigenschaften über das Kontextmenü der rechten Maustaste sicherstellen, dass die XHTML Datei das korrekte Encoding UTF-8 und nicht windows-1252 hat.

In der Source Sektion der NetBeans Projekt Properties kann man auch für die ganze Applikation UTF-8 als Standard Character Encoding definieren und damit festlegen, wie die IDE Source Dateien speichert und anzeigt.
Wenn man diese globale Einstellung ändert, könnte es sein, dass einige existierende Dateien nicht mehr korrekt gelesen werden!

Resourcen

[1] JSF 1.2
[2] Mojarra 1.2_14

Johannes Hammoud Character Encoding 24.04.2012

I Coding : Community über Java Programmierung

Sprache Englisch+-

Java JSF JavaScript HTML CSS NetBeans GlassFish MySQL

Impressum

Besuche
5744497
Heute
66