# werte per post an servlet übergeben und auswerten



## JensMander (15. Feb 2011)

Hallo Forum,
ich stehe mal wieder aufm Schlauch und würde mich risieg über Hilfe freuen.

Mit Hilfe eines Servlets und Javascript füge ich einem Div ein Form-Feld ein.

Dieses soll ein zusätzliches Servlet ausführen und alle Werte an dieses zusätzliche Servlet übergeben. Leider passiert bei der POST-Methode gar nichts-FIrebug gibt mir den Aufruf einfach nur Rot aus.

Hier einmal das Servlet welches das Form aufbaut:

```
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		{
			
			//Aufrufen der Datenbank
			String abfrage = "SELECT * FROM test";
			oracle d = new oracle();
			int spaltennummer = 1;
			ArrayList<String[]> system = d.datenbankabfrage(abfrage);
			
			response.setContentType("text/plain");
			PrintWriter out = response.getWriter();
			int anzahlarrays = system.size();
			int laengearrays =system.get(0).length;

			out.print("<form onsubmit='update_konf()' method='post'>");
			for (int i=0;i<laengearrays;i++)
			{
				out.print(system.get(0)[i]+": <input type='text' id="+system.get(0)[i]+" "+"value="+system.get(1)[i]+" class='inputfeld' readonly/><br>");
			}
			//out.print("<button id='startbutton' type='button' onclick='parameter_konf()'>Reset</button>");
			//out.print("<button id='startbutton' type='button' onclick='update_konf()'>Speichern</button>");
			out.print("<input type='submit' value=' Absenden '><input type='reset' value=' Abbrechen'>");
			out.print("</form>");
		}
```

und hier das Servlet welches die Elemente erhalten soll:


```
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
		// TODO Auto-generated method stub
	{
		//Werte in Variablen schreiben
		String wert1 = request.getParameter("id");
		String wert2 = request.getParameter("wert2");
		
		
		response.setContentType("text/plain");
		PrintWriter out = response.getWriter();
		out.print("Systemkonfiguration wurde geändert"+wert1+" "+wert2);
	}
```


und abschließend der Javascript-code zur Ausführung der Action/onSubmit

```
function update_konf(){
	var http = null; 
    http = new XMLHttpRequest();
    var dateiaufruf ='../test';
    http.open('POST',dateiaufruf,true);
    http.onreadystatechange = function()
          {
           if (http.readyState == 4)
           {
        	   document.getElementById("konf").innerHTML = http.responseText;
           }
          };
          http.send(null);
}
```



vielen Dank für eure Hilfe


----------



## brauner1990 (15. Feb 2011)

mache aus 
	
	
	
	





```
doGet
```
eine 
	
	
	
	





```
doPost
```
und prompt funktionierts!!


----------



## JensMander (15. Feb 2011)

Hi, danke für die schnelle Antwort, aber das "oberer" Servlet nimmt ja noch eine Get-Anweisung entgegen.

Es liegt unteranderem am Javascript, hier die Teillösung Problem A:


```
function update_konf(){
	var http = null; 
    http = new XMLHttpRequest();
    var dateiaufruf ='../test';
    http.open('POST',dateiaufruf,true);
    http.setRequestHeader();
    http.send("wert1=wert1&wert2=wert2");
    http.onreadystatechange = function()
          {
           if (http.readyState == 4)
           {
        	   document.getElementById("konf").innerHTML = http.responseText;
           }
          };
```


----------



## brauner1990 (16. Feb 2011)

Ah, gut, ne die doPost hatte ich übersehen. Und nun hast du es per Ajax gepostet.


----------

