Zum Inhalt springen

Umlautprobleme bei Parameterübergabe


daniel_bln

Empfohlene Beiträge

Hallo Leute,

ich habe eine Client Server Anwendung mit struts gebaut.

Ich habe momentan leider ein Problem mit der Parameterübergabe wenn Umlaute in ein Formular geschrieben werden und anschließend in die Datenbank.

Wenn diese Parameter an den Server übergeben werden, kommen sie anders beim Server an. Aus dem Wort übung wird beispielweise übung.

Das ist seltsam, weil ich auf meine jsp Seite auch mit dem UniCode Zeichensatz arbeite, Utf-8.

Serverseitig wandle ich den String dann in Unicode um:

new String(name_test.getBytes(),"UTF-8");

Das hilft schon, aber leider funktioniert das noch nicht bei Umlauten, die mit Großbuchstaben geschrieben werden.

Gibt es noch andere Methoden in Java, die bei der Umformung helfen oder sollte das Problem schon bei der Übergabe, also clientseitig angegangen werden??

lg

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi.

Ich hatte mal damals ein ähnliches Problem. Ich habe es einfach mitner Zeichenwandler Klasse gelöst. Eventuell bringt dich das ja weiter.

public class Zeichenwandler {

public static String entferneUmlaute(String s)
{
char zeichen;

String ersetzt = "";
int zeichenlaenge = s.length() - 1;
for (int n = 0; n <= zeichenlaenge; n++)
{
zeichen = s.charAt(n);
switch(zeichen)
{

case 'Ä': ersetzt += "Ae"; break;
case 'Ü': ersetzt += "Ue"; break;
case 'Ö': ersetzt += "Oe"; break;
case 'ä': ersetzt += "ae"; break;
case 'ü': ersetzt += "ue"; break;
case 'ö': ersetzt += "oe"; break;

default: ersetzt += zeichen;

}

}
return ersetzt;
}
}[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Servus,

Das ist seltsam, weil ich auf meine jsp Seite auch mit dem UniCode Zeichensatz arbeite, Utf-8.

Serverseitig wandle ich den String dann in Unicode um:

new String(name_test.getBytes(),"UTF-8");

Wie sieht denn das aus, wenn Deine JSP mit Unicode "arbeitet"? Ist die JSP-Datei in Unicode codiert oder gibst Du der JSP als Page Directive mit, dass der Inhalt Unicode ist?

Wenn zweiteres (darauf kommts an), was ist dann "name_test"? Die Variable, in der Du den Parameter speicherst? Du musst hier nichts rumtricksen, wenn Deine JSP korrekt dafür sorgt, dass das ausgespielte Markup dem Client sagt, in welchem Zeichensatz hier gesprochen wird. Dafür ist die entsprechende Page Directive zuständig.

Gib mal ein bisschen mehr Informationen, damit man am eigentlichen Problem arbeiten kann. Die Javascript-Lösung mit der Umschreibung von Sonderzeichen ist nämlich in meinen Augen nicht besonders elegant.

Peter

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...