tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
3627
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    SeeSharpNewBee SeeSharpNewBee ist offline Mitglied Gold
    Registriert seit
    Sep 2004
    Beiträge
    200
    Hi,

    ich habe ein Problem bei der Übergabe von Text an ein Servlet über doPost, und zwar ist der Zeichensatz der Seite UTF-8, und wenn ich das Formular absende dann werden die Umlaute durch irgendwelche Zeichen ersetzt.

    Wie kann ich das verhindern, bzw. den Text "so wie er ist" übergeben? Danke!


    EDIT: Hab mich falsch ausgedrückt, ich möchte daten per GET übertragen. Ich mach das folgend:

    Code :
    1
    
    String var = URLEncoder.encode("Das ist eine Übung", "UTF-8);

    hänge die variable dann per "?var=" an die Url, und möchte dann auf der nächsten Seite die Variable wieder mit

    Code :
    1
    
    String var = URLDecoder.decode(request.getParameter("var","UTF-8");
    auslesen, jedoch funktioniert das nicht, bitte Hilfe!

    Danke!
    Geändert von SeeSharpNewBee (29.05.07 um 14:51 Uhr)
     
    MFG SeeSharpNewBee

  2. #2
    cengizhdde cengizhdde ist offline Mitglied
    Registriert seit
    May 2005
    Beiträge
    23
    Hi,

    mit welchem Applikationsser arbeitest du? Ich selbst verwende Tomcat, und habe das Problem mittels eines Filters beheben können. Seitdem werden Umlaute sowie auch Leerzeichen (statt %....) richtig übergeben.

    Mehr Hilfe findest du denke ich unter dem Stichwort "CharsetFilter". Hier mein Beispielcode:

    package org.klevershop.tomcat.charsetfilter;

    import java.io.IOException;

    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;

    public class CharsetFilter implements Filter {

    private String encoding;

    public void init(FilterConfig config) throws ServletException {
    // TODO Auto-generated method stub
    encoding = config.getInitParameter("encoding");

    if (encoding == null)
    encoding = "UTF-8";
    }

    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain next) throws IOException, ServletException {
    // TODO Auto-generated method stub
    request.setCharacterEncoding(encoding);
    response.setCharacterEncoding(encoding);

    next.doFilter(request, response);
    }

    public void destroy() {
    // TODO Auto-generated method stub
    ;
    }

    }

    Gruss,
    Cengiz
     

Ähnliche Themen

  1. Kaputte Umlaute in Servlet (Tomcat/Linux)
    Von SOLOWK1 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 3
    Letzter Beitrag: 26.08.10, 13:25
  2. Parameter an Servlet übergeben
    Von wpb im Forum Java
    Antworten: 0
    Letzter Beitrag: 20.08.09, 14:49
  3. Parameter an Servlet übergeben
    Von Tischtennisspieler im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 4
    Letzter Beitrag: 19.07.06, 10:31
  4. Servlet-Applet-Kommunikation: Umlaute im String
    Von Charly81 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 2
    Letzter Beitrag: 03.01.05, 09:23
  5. Antworten: 0
    Letzter Beitrag: 20.12.04, 15:33