Daten aus Applet per POST an php übergeben

alti4

Grünschnabel
Hallo zusammen

Ich habe ein Problem: ich möchte aus einem Applet eine php-Seite aufrufen und dieser Seite per POST Daten aus dem Applet übergeben. Mit folgendem Code kann ich das machen (die neue Seite wird beim klicken auf ein Element des Applets aufgerufen), allerdings werden die Post-Daten auf der php-Seite nicht dargestellt. Wenn ich allerdings die Java-Konsole des IE betrachte, wird mir der Quelltext der php-Seite korrekt mit den übergebenen Werten angezeigt. Kann mir jemand sagen, wo ich noch einen Fehler mache.

Code:
public void actionPerformed( ActionEvent e ) { 
		    	  try {
		    	        URL url;
		    	        URLConnection urlConnection;
		    	        DataOutputStream outStream;
		    	        DataInputStream inStream;
		    	 
		    	        // Build request body
		    	        String body ="name=" + URLEncoder.encode("Fritz", "UTF-8") + "&ort=" + URLEncoder.encode("Berlin", "UTF-8");
		    	 
		    	        // Create connection
		    	        url = new URL("http://localhost/workspace/JSTest/bin/testausgabe.php");
		    	        urlConnection = url.openConnection();
		    	        ((HttpURLConnection)urlConnection).setRequestMethod("POST");
		    	        urlConnection.setDoInput(true);
		    	        urlConnection.setDoOutput(true);
		    	        urlConnection.setUseCaches(false);
		    	        urlConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
		    	        urlConnection.setRequestProperty("Content-Length", ""+ body.length());
		    	 
		    	        // Create I/O streams
		    	        outStream = new DataOutputStream(urlConnection.getOutputStream());  
		    	        
		    	 
		    	        // Send request
		    	        outStream.writeBytes(body);
		    	        outStream.flush();
		    	        outStream.close();
		    	        AppletContext Context = getAppletContext();
		    	        Context.showDocument(url, "_self");
		    	 
		    	        // Get Response
		    	        // - For debugging purposes only!
		    			inStream = new DataInputStream(urlConnection.getInputStream());
		    	        String buffer;
		    	        while((buffer = inStream.readLine()) != null) {
		    	            System.out.println(buffer);
		    	        }
		    	 
		    	        // Close I/O streams
		    	        inStream.close();
		    	    }
		    	    catch(Exception ex) {
		    	        System.out.println("Exception cought:\n"+ ex.toString());
		    	    }

php-Seite

Code:
<html>
	<head>
	<title>Ihre Eingabe</title>
	</head>
	<body>
	Testvariable: <?php echo $_POST['name'] ?><br>
	Testvariable2: <?php echo $_POST['ort'] ?><br>
	</body>
</html>

Vielen Dank für eure Hilfe
 
Ich habe unterdessen festgestellt, dass die Ausgabe auf der Konsole vom Aufruf
Code:
inStream = new DataInputStream(urlConnection.getInputStream());
		    	        String buffer;
		    	        while((buffer = inStream.readLine()) != null) {
		    	            System.out.println(buffer);
		    	        }
kommt. Kann mir jemand sagen, wie ich diesen zurückgegebenen Code im Browser ausgeben kann, so dass mir die gewünschte HTML-Seite dargestellt wird?
 
Zurück