# Problem mit request.getParameter



## .exe (10. Okt 2008)

Hi,

ich sehe grade vor lauter Bäumen den Wald nicht mehr. Ich mach eine einfache request.getParameter(name) abfrage aber die Textbox wird nicht ausgelesen  ???:L 

Mein Code in der JSP

```
...
<form name="Form" id="Form" action="MasterServlet"			
method="post" onSubmit="chkFormular()" enctype=multipart/form-data>
.
.
.
<div class="txtbox">
<input maxlength="35" class="textformular" title="funktio"type="text" name="funktion" id="funktion">
</div>
.
.
.
<input type="button" name="send" title="Formular abschicken" value=" Absenden " class="buttonform"
onClick="javascript:chkFormular();">
```


Mein Code im Servlet

```
package Formular.Servlet; 

import java.io.IOException;
import java.io.PrintWriter;
import java.text.DateFormat;
import java.util.GregorianCalendar;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.RequestDispatcher;
import javax.servlet.http.*;
import javax.servlet.*;

import Formular.Beans.DatenBean;
import Formular.Mail.MailErzeuger;
import Formular.Pdf.PdfErzeuger;

public class MasterServlet extends HttpServlet
  implements Servlet
{
  static final long serialVersionUID = 1L;
  static String Blub;
  
  public MasterServlet()
  {
    super();
  }

  protected void doGet( HttpServletRequest  request, HttpServletResponse response )
    throws ServletException, IOException
  {
	  	boolean durchfuehrung = true;
		DatenBean DatenTmp = new DatenBean(true);
	
		Blub = request.getParameter( "funktion" );
		System.out.println(Blub);
		
		
		//Datum wird erzuegt und auf tt.mm.jjjj formatiert.
		DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
		GregorianCalendar day=new GregorianCalendar();
		DatenTmp.setDatum(df.format(day.getTime()));	

		try
		{
		new PdfErzeuger().pdfErzeugen(DatenTmp);	
		}
		catch (Exception e) 
		{
			e.printStackTrace();
			durchfuehrung = false;
		}

		if(durchfuehrung)
		{
			try
			{
				new MailErzeuger().mailErzeugen(DatenTmp);	
		}
			catch (Exception e) 
			{
				e.printStackTrace();
				durchfuehrung = false;
			}
		}
		
    	RequestDispatcher  view = request.getRequestDispatcher( "/jsp/Test.jsp" );
    	view.forward( request, response );
 	 }

  protected void doPost( HttpServletRequest  request,HttpServletResponse response )
    throws ServletException, IOException
  {
    doGet( request, response );
  }
}
```

Das Servlet wird aufgeruf die Ausgabe des ausgelesenen Wertes ist "Null" und die restlichen schritte im Servlet werden richtig und fehlerfrei ausgeführt.
Nur warum wird die Textbox nicht ausgelesen?

MFG

.exe


----------



## SlaterB (10. Okt 2008)

http://www.java-forum.org/de/viewtopic.php?t=75845


----------



## .exe (10. Okt 2008)

ja da sieht doch gut aus was da steht.
Danke für die Hilfe


----------



## habeKA (10. Okt 2008)

Aber warum muss man das denn so machen in dem Besipiel (siehe code) geht es doch auch ohne die sachen aus dem link.

Servlet Code

```
package coreservlets;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
/** Simple servlet that reads three parameters from the
* form data.
*/
public class ThreeParams extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String title = "Reading Three Request Parameters";
String docType =
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
"Transitional//EN\">\n";
out.println(docType +
"<HTML>\n" +
"<HEAD><TITLE>" + title + "</TITLE></HEAD>\n" +
"<BODY BGCOLOR=\"#FDF5E6\">\n" +
"<H1 ALIGN=\"CENTER\">" + title + "</H1>\n" +
"<UL>\n" +
" <LI>[B]param1[/B]: "
+ request.getParameter("param1") + "\n" +
" <LI>[B]param2[/B]: "
+ request.getParameter("param2") + "\n" +
" <LI>[B]param3[/B]: "
+ request.getParameter("param3") + "\n" +
"[/list]\n" +
"</BODY></HTML>");
}
}
```


Code JSp

```
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Collecting Three Parameters</TITLE></HEAD>
<BODY BGCOLOR="#FDF5E6">
<H1 ALIGN="CENTER">Collecting Three Parameters</H1>
<FORM ACTION="/servlet/coreservlets.ThreeParams">
First Parameter: <INPUT TYPE="TEXT" NAME="param1">

Second Parameter: <INPUT TYPE="TEXT" NAME="param2">

Third Parameter: <INPUT TYPE="TEXT" NAME="param3">

<CENTER><INPUT TYPE="SUBMIT"></CENTER>
</FORM>
</BODY></HTML>
```

Das auslesen geht.

also woegenau ist denn jetzt da der unterschiede


----------



## SlaterB (10. Okt 2008)

<FORM ACTION="/servlet/coreservlets.ThreeParams"> 

vs

<form action="MasterServlet" method="post"  enctype=multipart/form-data> 


nicht die Links gelesen? da steht doch genau drin, wann das so kompliziert ist,
DASS es so kompliziert ist, kann man natürlich bemeckern, weiß auch nicht warum


----------



## habekA (10. Okt 2008)

Ok jetzt habe ichs verstanden. 
Ich dank dir vielmals


----------

