Java Tomcat 6.0 Servlet , Exception bei Parameter übergabe

le-koi

Cadet 2nd Year
Registriert
Nov. 2007
Beiträge
19
Hallo,

ich habe einen sehr ungewöhnlichen Fehler bei einem Servlet.
Ich gebe mit der doGet Methode eine HTML-Seite aus, wo mehrere
Felder gefüllt werden sollen.
Beim Absenden wird dann die doPost-Methode betätigt und soll die Parameter auslesen.
Soweit so gut, allerdings kriege ich bei manchen Eingaben eine Exception.

Code:
java.lang.NullPointerException
	org.apache.catalina.connector.Request.parseParameters(Request.java:2446)
	org.apache.catalina.connector.Request.getParameter(Request.java:1040)
	org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:355)
	test01.InvServlet.fill(InvServlet.java:126)
	test01.InvServlet.doPost(InvServlet.java:115)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

Es ist wie Lotterie spielen. Bei manchen Eingaben kriege ich diese Exception,
bei anderen läuft die Prozedur ohne Fehler durch.
Es hat nichts mit Sonderzeichen, Zahlen, etc zu tun, dies habe ich soweit
getestet. Es könnte was mit der länge der Strings zu tun haben, aber zum Teil
kommen auch in jedem Feld lange Strings durch.

Die Methode doPost()
Code:
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
				throws ServletException, IOException {
			fill();
			out1.println("<html><head><title>muh</title><body> Ihre Daten wurden erfolgreich abgeschickt"+
					"<form action=\"/Notebook/notebook\" method=\"post\"></body>" +
					"<input type=\"submit\" value=\"Zurücksetzen\" style=\"width:130px;\" type=\"button\">"+
					"</form></html>");
		}

Die Methode fill()
Code:
	public void fill()
	{
		
		this.unum = this.getRequest().getParameter("unum");  [B]Hier kommt die Exception wenn sie auftritt[/B]
		System.out.println(this.unum);
		this.oe = this.getRequest().getParameter("oe");
		System.out.println(this.oe);
		this.vname = this.getRequest().getParameter("vname");
		System.out.println(this.vname);
		this.name = this.getRequest().getParameter("name");
		System.out.println(this.name);
		this.tel = this.getRequest().getParameter("tel");
		System.out.println(this.tel);
		this.tname = this.getRequest().getParameter("tname");
		System.out.println(this.tname);
		this.invNb = this.getRequest().getParameter("inrnote");
		System.out.println(this.invNb);
		this.snrNb = this.getRequest().getParameter("snrnote");
		System.out.println(this.snrNb);
		this.pcName= this.getRequest().getParameter("pcname");
		System.out.println(this.pcName);
		this.invDr = this.getRequest().getParameter("inrdruck");
		System.out.println(this.invDr);
		this.snrDr = this.getRequest().getParameter("snrdruck");
		System.out.println(this.snrDr);
		this.invTel = this.getRequest().getParameter("inrtel");
		System.out.println(this.invTel);
		this.snrTel = this.getRequest().getParameter("snrtel");
		System.out.println(this.snrTel);
		this.bem = this.getRequest().getParameter("bem");
		System.out.println(this.bem);

Also die Parameter-Name sind alle richtig, sonst würde es manchmal auch nicht gehen.
Die Exception tritt beim ersten this.getRequest().getParameter("unum") auf.
Die System.outs sind nur zur Kontrolle- / Testzwecken im Quelltext
Meiner Meinung müsste die Exception heißen, dass er den Parameter nicht gibt bzw. nicht verfügbar ist.

Als Server wird Tomcat 6.0.16 verwand.
Java ist das neueste JDK jdk1.6.0_10.
IDE ist Eclipse 3.4 WTP.
An den Server configs habe ich soweit nicht geändert.

Wäre super wenn mir wer helfen könnte.
Google hat mir auch nicht so richtig weitergeholfen.

gruß koi
 
Zuletzt bearbeitet:

Ähnliche Themen

Zurück
Oben