# URL mit POST variablen aufrufen



## PhantomXXL (11. Apr 2005)

php -> cURL extension
Java -> ?

ich hab schon ne möglichkeit gefunden ne seite aufzurufen und inhalt in nen string zu fördern, jedoch die variablen nur per get übergeben.


----------



## PhantomXXL (11. Apr 2005)

so nu hab ich was gefunden, ich kann etwas mitgeben das finde ich im php im $_HTTP_RAW_POST_DATA

mit java servlets kann ich dies jedoch nicht auslesen es gibt im request zwar getContentType und getContentLength, die beide korrekt mit dem inhalt sind, jedoch kann ich nicht den inhalt selbst aufrufen (aka getContent oder dergleichen).

Jemand ne ahnung wie das gehen könnte?


----------



## semi (11. Apr 2005)

Überschreibe die Methode doPost(...) oder von mir aus gleich service(...) im Servlet.
An die übergebenen Daten kommst Du genauso ran wie bei der GET-Anforderung.


----------



## PhantomXXL (11. Apr 2005)

nun damit ich post parameter variablen aufrufen könnte müsst ich erstmal ne url mit post mehtode aufrufen können. leider finde ich nur get, kann aber im content daten übermitteln. im php stehen diese daten dan eben in genannter variable, mit dem servlet kann ich diese jedoch in keiner der request methoden finden, hab mir alle ausgeben lassen.


----------



## PhantomXXL (11. Apr 2005)

Also das ist mal das kompeltte testprogramm...


```
import java.sql.SQLException;

import at.pinzgaucom.servlet.EasyServlet;
import at.pinzgaucom.servlet.EasyServletData;
import at.srfg.cms.CMSConnection;

public class test extends EasyServlet {

	protected EasyServletData doProzess(EasyServletData esd) throws SQLException {
		esd.debugmode=0;
		echodebug(esd,"start");
		String testget="bla=gugu&blo=blag≥[0]=5≥[1]=4≥[2]=3";
		String testcontent="test=blubbblubb";
		//String URL = "http://localhost/test/test2?"+testget;
		String URL = "http://localhost:85/?"+testget;
		String data="nix";
		echodebug(esd,"start con");
		CMSConnection con = new CMSConnection(URL);
		if ( con.doWork(testcontent) ) {
			data = con.getContent();
			echodebug(esd,"con");			
		} else {
			echodebug(esd,"not con");
		}
		echodebug(esd,"end con");
		echo(esd,data);
		echodebug(esd,"end");
		return esd;
	}
	
}
```

das ist die ausgabe des php testprogramms (die url mit port 85)


```
Array
(
    [HTTP_RAW_POST_DATA] => test=blubbblubb
    [HTTP_POST_VARS] => Array
        (
        )

    [_POST] => Array
        (
        )

    [HTTP_GET_VARS] => Array
        (
            [bla] => gugu
            [blo] => blag
            [ge] => Array
                (
                    [0] => 5
                    [1] => 4
                    [2] => 3
                )

        )
...
```

als ist der testcontent dabei, nur wie lies ich das mit nem java servlet aus...
(test 2 erspar ich, das macht nur ne enumeration der parameter und header und alles was die variable request halt an methoden zu bieten hat, wobeinirgendwo mein test=blubbblubb zu finden is  )

hinweis die CMSConnection klasse stammt von einer partnerfirma, darauf hab ich wenig einfluss, aber damit sollte es funktionieren...


----------



## PhantomXXL (11. Apr 2005)

blöde inputStreams ... hab endlich gefunden *g*


----------

