Keine änderung der Zeichenkodierung von ISO-8859-1 zu UTF-8 in glassfish 3.1
Ich habe Probleme, mich zu ändern Sie den Zeichensatz in meinem web-Anwendung, die Reaktion von ISO-8859-1 (default) auf UTF-8. Ich schon Hinzugefügt, die VM-option -Dfile.encoding=UTF-8
den JVM-Optionen
Aber immer noch, ich bekomme den folgenden HTTP-Header als Antwort des glassfish:
Content-Type: [...;charset=ISO-8859-1]
Server: [GlassFish Server Open Source Edition 3.1]
Ich würde mich über Eure Hilfe/Ideen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
-Dfile.encoding
ist eine Oracle-JVM-spezifische Einstellung, wie zu Lesen, Java-source-Dateien. Dies hat keine Einfluss auf die charset-Angaben in derContent-Type
header der HTTP-Antwort.Müssen Sie den folgenden, um Ihre
web.xml
um zu senden der Antwort an alle JSP-Seiten als UTF-8 und lassen Sie es setzen Sie die entsprechenden charset im header der Antwort.Siehe auch:
Content-Type
header mit einer anderen Codierung? Überprüfen Sie es von Firebug und auf. Siehe auch den Bildschirm in diese Antwort stackoverflow.com/questions/4245386/..., Wenn es in der Tat fehlt, sind Sie sicher, dass Sie nicht es während der Reaktion ist die bereits begangen wurden, für lange?Für UTF-8-Schriften auf Glassfish3 (Log-files etc):
Gehen
Server-config
>JVM Settings
>JVM Options
>Add option
(-Dfile.encoding=UTF8
).Wenn Sie nicht auf
-server mode
dann gehen Sie zudefault-config
>JVM Settings
>JVM Options
Zur Festlegung einer standard-Antwort charset anderen als der Standard-ISO-8859-1 für GlassFish (oder Tomcat oder anderen Servlet-container), müssen Sie setzen einen filter, der Anrufe Antwort.setCharacterEncoding. Hier ist, wie:
1. In Ihrem web.xml definieren Sie den filter:
2. Hier ist der filter-Implementierung:
Versuchen Sie, hinzufügen:
Ihrem web.xml... Nach http://wiki.metawerx.net/wiki/Web.xml diese Zeilengruppe wird Ihre Codierung zu UTF_8.