Beiß mir die Zähne aus an der Request-Parameter-Übergabe!

Status
Nicht offen für weitere Antworten.
R

Rocco H

Gast
Hallo Leute.

Eigentlich nix neues das man mit Parametern arbeiten kann, besonders sinnvoll bei Formularen usw..

Aber heute ist es mir passiert, daß bei einem <Submit> im Zielservlet auf einmal ein Parameter nicht vorhanden ist.
(Parmeter ist null, also nicht vorhanden.)
Das zeigt auch die Auflistung request.getParameterNames() .

Warum mein Parameter nicht übergeben wird, verstehe ich beim Besten Willen nicht. Ich gehe davon aus, daß das Problem nicht im Code liegt.
Dann dieser Parameter wird bei einem Firefox 1.5 Browser übergeben,
aber von einem Internet Explorer 6 nicht. (Anmerkung, alle anderen Parameter schon, außer der eine ????)


Hier ein Auszug aus dem Code:

in JSP:
Code:
            <FORM action="/...servletxxx" method=post>
                    ...
                <Input type="checkbox" Name="dl" Value=1">
                    ...
                <Input type="image" src="/xxx.gif" Name="submit" Value="xx">
                    ...
           </FORM>

**** an und für sich ja nix besonderes, kann ja jeder auswendig ***

im Servlet:

        request.getParameter("dl");             -->liefert 1
        request.getParameter("submit");      -->liefert null, da er auch garnicht übergeben wurde ????
Ich weiß nicht ob das bei jemanden schon aufgetreten ist..
oder ob ich bescheuert bin.. jedenfalls macht mich das Wahnsinnig!!!!!!!
Warum übergibt der IE genau den einen Parameter nicht???

Wenn ihr mehr Fragen habt dazu, fragt gerne..
 
K

KSG9|sebastian

Top Contributor
Mach mal sauberen HTML-Code..

1. sämtliche Attribute klein schreiben
2. sämtliche Tags wieder schliesen ( <blah /> )
3. gib dem nicht den Namen submit, vll. wird das intern für irgendetwas verwendet (bei Firefox)
 
Bleiglanz

Bleiglanz

Gesperrter Benutzer
ja, das schaut ja wie Hausfrauen HTML aus

habs gerade probiert: der IE schickt das name/value Paar einfach nicht mit :) musst du halt einen Workaround machen

kriegst du eigentlich "submit.x" und "submit.y" in deinen parametern...

das gute alte Webdesigngewürge
 
G

Guest

Gast
KSG9|sebastian hat gesagt.:
Mach mal sauberen HTML-Code..

1. sämtliche Attribute klein schreiben
2. sämtliche Tags wieder schliesen ( <blah /> )
3. gib dem nicht den Namen submit, vll. wird das intern für irgendetwas verwendet (bei Firefox)

Die Seite ist HTML 4 zwar validiert wurden, habe aber trotzdem mal deinen Rat befolgt.
Leider hat das auch nix genützt.
Merkwürdig finde ich auch, daß wenn man beim Firefox sich Seiteninformation anzeigen läßt, unter der Rubrick "Formulare" generell auch keine Infos zu den Submit Buttons vorhanden sind.
Kann man denn etwa Submit Buttons nicht mit Values versehen? Ist da nur Firefox fehlertolerant?
Naja glaube nicht, weil wie gesagt, zum debuggen lasse ich mir mit request.getParameterNames() und einer Schleife (.enum.hasMoreElements) die Werte ausgeben. Und da steht bei einer Firefox Anfrage mien Submit button dabei
und bei der IE Anfrage eben nicht einmal.
Allerdings steht da im request : löschen.x und löschen.y mit irgendnen komischen Wert
Das verstehe ich nicht. Vielleicht ist das aber der Schlüssel zu meinen Problem.

Wenns interessiert, hier noch mal der geänderte und komplette Code-Auszug aus der JSP Seite:
(Hilfe: Es wird eine Tabelle über i-Zeilen iteriert. Die Tabelle ist in einem Formular eingekapselt.
In der jeweils letzten Spalte stehen z.B. 2 submit-Buttons, mit unterschiedlichen Values, damit ich im Servlet
selber weiss, welcher Spalte getätigt wurde)

Code:
<td>

            if (_kunde.getreg()!=null){
                if (_kunde.getdl()==null ) {
                    <INPUT TYPE="checkbox" Name="dl" Value="<%=i%>" class="dl">	
                }else{ 
                     <INPUT TYPE="checkbox" Name="dl" Value="<%=i%>" class="dl" checked>	
                } 
            }else{
                &
            } 

</td>	  




<td>
            if (_kunde.getmail()==null) {
                [img]/Admintool/icons/leer.GIF[/img]</img>
            }else{
                <a class="Pfeile" href="mailto:<%=_kunde.getmail()%>">
                [img]/Admintool/icons/outlook_ico.gif[/img] "Style="margin-left:4px">
                </a>
            } 
	                        
            <INPUT type="image" src="/Admintool/icons/refresh.gif" name="ändern" value="<%=i%>"     
                        alt="ändern"> </INPUT>
                        	
            if (_kunde.getreg()!=null){ 
                <INPUT type="image" src="/Admintool/icons/mull.gif" name="löschen" value="<%=i%>"             
                            alt="austragen"></INPUT>
            }else {
                <a class="Pfeile" href="/Admintool/protected/JSP/register.jsp?choose=<%=i%>">
                [img]/Admintool/icons/forward.gif[/img]</img>
                </a>
            } 

</td>
(übersichtlicherweiße habe ich die <% %> für Scriptlets ausgelassen

Wie gesagt, die Parameter für den Input-type="checkbox" lassen sich auslesen, aber der Input-type="image" wird irgendwie nicht mit übergeben.
 
R

Rocco H

Gast
Ich habe gerade als Gast geschrieben..

Da war auch schon ein neues Replay :)
Ja ich bekomme .x & .y
Warum liegt das an meinen HTML Gewürge ?
So schlimm?
 
Bleiglanz

Bleiglanz

Gesperrter Benutzer
nein, das Gewürge bezog sich mehr darauf, dass der IE das eben anders macht als der Firefox

musst du eben anders lösen, etwa prüfen ob aendern.x vorhanden ist oder austragen.x

bitte nicht mit ä und ö arbeiten
 
R

Rocco H

Gast
Warum macht der IE plötzlich 2 Parameter draus ?
Leider entsprechen die Werte aber auch nicht denen wie sie im HTML code stehen... Ansonsten könnte ich sie freilich benutzen.

Ich überlege auch krampfhaft ob ich anders darum herum komme, aber da scheint mir nix in Aussicht..
Ich habe das ja auch schon immer so gemacht.. Warum das auf dieser einen JSP mit dem Parameter nicht klappt weiss ich nicht.
Das Problem scheint so trivial, das man es selber übersieht, bzw. nirgends dokumentiert ist.
 
R

Rocco H

Gast
Hmm mir scheint fast so, also ob der IE generell keine Values von Submit Parameter im Request mit übergibt?
Ich habe mir nochmal zum Test was gebaut.. da erscheint immer
ParamName.x und ParamName.y aber nicht mit dem entsprechenden Value.

Geht euch das auch so ??
 
Bleiglanz

Bleiglanz

Gesperrter Benutzer
das x und das y sind die angeklickten koordinaten im bild

-> möglicher irrer workaround: du machst nur Bild und entscheidest anhand des y Wertes was gewünscht wird ("ändern", "löschen"...)
 
R

Rocco H

Gast
Ach jetzt verstehe ich.. aufgrund des submit types images,
gibt er als Value die Koordinaden zurück, anstatt den festdefinierten Value.. hmm. schick.
aber für meine Interesse war mir die Firefoxvariante lieber..

Naja.. dann muss ich was in den Input Namen was mit reinkodieren und mit wieder rausparsen..

Danke für die Info.
 
R

Rocco H

Gast
Oja jetzt ist mir auch aufgefallen das der Firefox auch die .x .y Values übergibt. Aber zusätzlich auch den definierten Value.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F POST-Request mit json - Abfrage mit Java Java Basics - Anfänger-Themen 2
B Dropbox Anbindung, Hilfe bei Authentification -> HttpServletRequest request Java Basics - Anfänger-Themen 3
G Fake Request an AppServer Java Basics - Anfänger-Themen 8
B Input/Output HttpURLConnection ( java.net ) Post request Java Basics - Anfänger-Themen 8
N ArrayList: Das zweite Element wird zur Liste nicht eingefügt nach dem zweiten request. Java Basics - Anfänger-Themen 3
J HTTP Request auf eine PHP Session Java Basics - Anfänger-Themen 1
J Html zugriff - POST Request/Response Java Basics - Anfänger-Themen 4
J Java.Util.Properties wrapper class (Review Request) Java Basics - Anfänger-Themen 2
C HTTP POST-Request Java Basics - Anfänger-Themen 3
S HTTP Request Umlaut Problem Java Basics - Anfänger-Themen 3
N Http-Request : Google Suche Java Basics - Anfänger-Themen 6
G vordefinierte Methoden der Variable "request" in J Java Basics - Anfänger-Themen 7
G http-Request auf Apache Tomcat Java Basics - Anfänger-Themen 13
G in JSP auf request-Parameter zugreifen Java Basics - Anfänger-Themen 3
A HTTP-Request Java Basics - Anfänger-Themen 15
G String str = request.getParameter(String s) ? Java Basics - Anfänger-Themen 2
D mit request.getParameter("x") rechnen Java Basics - Anfänger-Themen 3
K request.getParameterMap() Java Basics - Anfänger-Themen 9
J Mehrdimensionales Array im Http-Request Java Basics - Anfänger-Themen 5
T Bei Struts Beans updaten ohne ein Request zu verarbeiten Java Basics - Anfänger-Themen 4
G Servlet gibt über request nur null zurück Java Basics - Anfänger-Themen 3
H Überprüfen ob Request mit enctype=multipart/form-data Java Basics - Anfänger-Themen 2
J HTTP Request Auslösen Java Basics - Anfänger-Themen 2
P HTTP-Request Parameter übergeben Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Anzeige

Neue Themen


Oben