JSP/GlassFish: zum einrichten der UTF-8-Codierung korrekt

Ich bin auf der Suche nach Hilfe, um all meine Schichten in dem Stapel auf UTF-8-Codierung.

Fand ich diesen schönen Artikel:

http://www.javapractices.com/topic/TopicAction.do?Id=206

Beschreibung der 3 Orte, die ich brauchen, um über die Codierung. Da mein (1) Oracle-Datenbank wird derzeit auf UTF-8 eingestellt, das lässt die (2) browser und (3) server zu kümmern.

Fand ich auch diesen ausführlichen Artikel

http://balusc.blogspot.com/2009/05/unicode-how-to-get-characters-right.html#JSPServletRequest

denen ich versuche zu Folgen unten, aber mit einige newbie Fragen zur Umsetzung.

Zur Adresse, den browser, den ich gemacht habe, sicher, dass die folgenden am Anfang jeder JSP-Seite:

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

(Referenz, siehe hier).

Adressieren Sie den server, ich stellte sicher, dass die folgende Zeile in der Java-servlet-und JSP-Seiten vor der Erteilung einer request.getParameter() oder request.getAttribute() Aussage:

request.setCharacterEncoding("UTF-8");

Da bin ich mit GlassFish 3.1.2, ich verstehe es nicht verwenden standardmäßig UTF-8, so dass ich brauche, um es manuell irgendwie.

Ich habe gesehen eine Menge von websites, die Rede von einer Datei namens glassfish-web.xml. Ist dies Teil der normalen glassfish installieren? Ich weiß nicht, wo es zu finden ist. Ich habe mit der web.xml Datei in meinem WEB-INF Ordner für meine web-Anwendung. Könnte jemand mir helfen herauszufinden, ob ich brauche, dies zu ändern web.xml Datei, oder muss ich die suchen oder erstellen Sie eine neue Datei mit dem Namen glassfish-web.xml konfigurieren Sie die Codierung für glassfish?

Meine web.xml - Datei beginnt mit:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app> 
...

Für die JSP/servlet-Anfrage habe ich die folgende Zeile in die web.xml Datei

<parameter-encoding default-charset="UTF-8"/>

Ist OK, um in das web.xml - Datei? Oder, muss es gehen in einigen glassfish-web.xml - Datei?

Für die JSP/servlet-Antwort, ich habe die folgenden in meinem web.xml - Datei (siehe akzeptierte Antwort hier):

<jsp-config>
   <jsp-property-group>
       <url-pattern>*.jsp</url-pattern>
       <page-encoding>UTF-8</page-encoding>
   </jsp-property-group> 
</jsp-config>

Gehe ich davon aus dass diese Zeilen nur einfügen zwischen <web-app> und </web-app>. Aber, lassen Sie mich wissen, wenn Sie sollte stattdessen gehen in einigen anderen Deskriptor (wie <glassfish-web-app> und </glassfish-web-app>)?

Außerdem habe ich Folgendes in der JSP <head> Abschnitt:

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

Nützliche Hinweise:

Wie loswerden der WARNUNG: PWC4011: kann Nicht festgelegt Anfrage Zeichenkodierung auf UTF-8

https://stackoverflow.com/tags/servlet-filters/info

https://wikis.oracle.com/display/GlassFish/FaqHttpRequestParameterEncoding

InformationsquelleAutor user46688 | 2014-11-06

Schreibe einen Kommentar