kein Absatz mittels request.getParameter()??

7bkahnt

Aktives Mitglied
Hi Leute,

ich habe evtl. eine recht simple Frage.
Ich möchte gern von einer Struts-Textarea den Absatz mit in die DB speichern.
Bsp. ich gebe in einer Textarea folgendes ein:
"Test 1
Test 2
"
Nun sende ich den Inhalt der Textarea an eine jsp, wo die entsprechende Methode zur Speicherung aufgerufen wird. Doch schon hier tritt mittels folgendem Code der Fehler auf.
Java:
System.out.println("text_betreff1: "+request.getParameter("text_betreff1"));

Es wird der Absatz entfernt und das Ergebnis ist "Test1Test2".
Ich möchte aber die Daten inklusive Absatz in die DB schreiben. Habt Ihr da eine Lösung?

Grüsse
 

nocturne

Bekanntes Mitglied
Es gibt verschiedene Methoden den Parameter abzusenden, du solltest Enctype und die Post-Methode verwenden:

ie: <form method="post" enctype="application/x-www-form-urlencoded">
 

7bkahnt

Aktives Mitglied
Ah okay, danke!
Hab es jetzt mal ausprobiert mittels
HTML:
request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
Funktioniert leider nicht. Es wird immernoch der Absatz entfernt.;)
Also ich sende den Inhalt des Textfeldes mittels Ajax an eine jsp. Diese ruft dann einfach nur die Speichern-Methode in Java auf. Bei der jsp kommt aber mittels getParamater() schon nur der Inhalt des Textfeldes ohne Absatz an...

Ich versende mehrere Parameter gleichzeitig:
HTML:
var getUrl="?ansprechpartner="+ansprechpartner+"&text_email="+text_email+"&telefon="+telefon+"&telefax="+telefax
						+"&dat_adr="+dat_adr+"&dat_eingang="+dat_eingang+"&dat_rb="+dat_rb+"&aktenzeichen="+aktenzeichen
						+"&text_betreff_typ="+text_betreff_typ+"&regionalbereich="+regionalbereich+"&adrname="
						+adrname+"&adrstrasse="+adrstrasse+"&adrnummer="+adrnummer+"&adrnummerzusatz="+adrnummerzusatz+"&adrplz="+adrplz+"&adrort="+adrort
						+"&adrpf_plz="+adrpf_plz+"&adrpf_nummer="+adrpf_nummer+"&text_betreff1="+text_betreff1+"&text_betreff2="+text_betreff2+"&text_information="+text_information+"&eingang_ausgang="+eingang_ausgang;
alert(getUrl);

Das alert zum Schluss gibt mir aber den Absatz wieder bei Betreff. Also scheiterts irgendwie bei der Auswertung mittels request.getParameter() in der jsp.
Grüsse
 
Zuletzt bearbeitet:
N

nillehammer

Gast
Hallo,

nach Deinem letzten Beispiel sieht es so aus, als würdest Du bei Deinem Formular als method ein "get" haben. Das funktioniert aber nicht. Wie nocturne schon geschrieben hat, musst Du als Formular-method "post" benutzen.

Gruß nillehammer
 

nocturne

Bekanntes Mitglied
Aha!



Mit AJAX sieht das natürlich anders aus. Mit deinem AJAX geht zwar Post als Methode aber es sind keine Post-Daten möglich (Bitte verwende Prototype-JS oder JQuery)!!!

Du verwendest zwar zur übertragung die Post-Methode,
übergibst den Wert aber als Get-Parameter. So bleibt der Post-Daten-Bereich leer.

Als "Workaround" könntest du alle Zeilenumbrüche mit µ ersetzen und in Java die µ mit Zeilenumbrüchen ersetzen.
 
Zuletzt bearbeitet:

7bkahnt

Aktives Mitglied
So sieht es derzeit aus:
HTML:
// Request öffnen
						request.open('post',url + getUrl, true);
						//RequestHeader für codieren der Daten
						request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
						// Request senden
						request.send(null);
						// Request auswerten
						request.onreadystatechange = function(){..}
Im getUrl-String stehen die Parameter die ich mitgeben möchte.
Wenn ich das jetzt richtig verstanden habe muss der getUrl-String in die request.send() Methode?
Was muss dann in request.open() rein?
 

Ähnliche Java Themen

Neue Themen


Oben