2009-04-03 6 views
2

Ich hatte einige Probleme mit dem Lesen und Schreiben von UTF-8 von Servlets auf Tomcat 6/Linux. Anfrage und Antwort waren utf-8, Browser war utf-8, URIEncoding wurde in server.xml sowohl auf Connectors als auch auf Hosts gesetzt. Kurz gesagt, jede bekannte Sache für mich im Code selbst, und die Serverkonfiguration war utf-8.UTF-8 und Servlets auf Tomcat/Linux

Beim Lesen Anforderung, musste ich Byte-Array von String nehmen, und dann konvertieren Sie diese Byte-Array wieder in String. Beim Schreiben der Anfrage musste ich Bytes schreiben, nicht String selbst, um eine korrekte Antwort zu erhalten (sonst würde ich eine Ausnahme bekommen, die besagt, dass ein Nicht-ASCII-Zeichen nicht ISO 8859-1 ist).

+0

ich die Antwort gefunden Sie es von hier sehen kann. http://isurueng.blogspot.com/2011/12/utf-8-and-jspservlets-on-tomcatlinux.html – Isuru

Antwort

0

Lösung war LANG Umgebungsvariable auf (in meinem Fall) en_US.UTF-8 oder wahrscheinlich ein anderes UTF-8-Gebietsschema zu setzen. Ich bin immer noch verwirrt mit der Tatsache, dass ich nichts aus Code machen konnte, um mein Servlet richtig zu verhalten. Wenn es keine Möglichkeit gibt, es zu tun, dann ist es aus meiner Sicht ein Fehler.