Hallo Leute,
ich(Win XP, Firefox 3.6.8, Java 1.6) habe ein Problem, zu dem mir momentan nichts einfaellt:
Ich lade ein Seite ins Programm:
URL myurl;
BufferedReader URLInput;
try{
myurl =new URL("http://testen.zulutrade.com/TradeHistoryIndividual.aspx?pid=26203");
try{
URLInput=new BufferedReader(new InputStreamReader(myurl.openStream()));
String line="";
int i=0;
//Zeile fuer Zeile einlesen
while( (line=URLInput.readLine()) !=null ){
System.out.println(line);
}//while
So weit, so gut.
Das Problem ist, die Seite enthaelt ein Tabelle, deren Inhalte per Javascript aufgefuellt werden. Ich nenne sie mal
Unterseiten. Bei ersten Laden der Seite ist die erste Unterseite bereits in der Tabelle geladen. Wenn der Betrachter jetzt zb.
die Unterseite 2 haben will, klickt er auf den entsprechenden Link.
Dieser lautet:
<a href="javascript:__doPostBack('ctl00$box1$GridViewTradeHistory','Page$2')">2</a>
Der Server laedt jetzt mit der aufgerufenen doPostBack-Funktion die Seite 2 in die Tabelle.
Die Funktion __doPostBack() ist moeglicherweise in der Datei page1prov1subpage1-Dateien/common.js enthalten.
Es gibt aber auf der Seite auch noch andere Quellangabe fuer javascript, zb.:
<script src="page1prov1subpage1-Dateien/jquery.js" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/common.js" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_007.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_002.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_003.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_004.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_005.axd" type="text/javascript"></script>
.
.
usw.
Wenn die im Browser geladene Webseite diese Scriptfunktion aufruft, weiss die Funktin natuerlich, wo die die Daten hinschicken
muss.
Wie kann ich die Funktion aber aus einer Java-Applikation heraus aufrufen? (Bei Applets gibt es ja zb. eine Funktion Namens
getCodeBase(), dann geht das wohl. Aber meine Applikation hat natuerlich keine Codebase.
Weiss jemand, wie man das macht? Eventuell wuerfe es auch etwas bringen, wenn jemand wuesste, wie man diese Postback-funktion
aus der Adresszeile des Browsers heraus in einem Stueck mit der Seite selbst aufrufen kann (zb.
http://testen.zulutrade.com/TradeHistoryIndividual.aspx?pid=26203&javascript:__doPostBack('ctl00$box1$GridViewTradeHistory','Pa
ge$2') oder so aehnlich. Vermutlich muesste man dabei auch noch irgendwie die Quelldatei angeben, in der die Funktion liegt.
Stehe, wie gesagt, hier voellig auf dem Schlauch. Bin fuer jede Hilfe dankbar!
ich(Win XP, Firefox 3.6.8, Java 1.6) habe ein Problem, zu dem mir momentan nichts einfaellt:
Ich lade ein Seite ins Programm:
URL myurl;
BufferedReader URLInput;
try{
myurl =new URL("http://testen.zulutrade.com/TradeHistoryIndividual.aspx?pid=26203");
try{
URLInput=new BufferedReader(new InputStreamReader(myurl.openStream()));
String line="";
int i=0;
//Zeile fuer Zeile einlesen
while( (line=URLInput.readLine()) !=null ){
System.out.println(line);
}//while
So weit, so gut.
Das Problem ist, die Seite enthaelt ein Tabelle, deren Inhalte per Javascript aufgefuellt werden. Ich nenne sie mal
Unterseiten. Bei ersten Laden der Seite ist die erste Unterseite bereits in der Tabelle geladen. Wenn der Betrachter jetzt zb.
die Unterseite 2 haben will, klickt er auf den entsprechenden Link.
Dieser lautet:
<a href="javascript:__doPostBack('ctl00$box1$GridViewTradeHistory','Page$2')">2</a>
Der Server laedt jetzt mit der aufgerufenen doPostBack-Funktion die Seite 2 in die Tabelle.
Die Funktion __doPostBack() ist moeglicherweise in der Datei page1prov1subpage1-Dateien/common.js enthalten.
Es gibt aber auf der Seite auch noch andere Quellangabe fuer javascript, zb.:
<script src="page1prov1subpage1-Dateien/jquery.js" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/common.js" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_007.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_002.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_003.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_004.axd" type="text/javascript"></script>
<script src="page1prov1subpage1-Dateien/ScriptResource_005.axd" type="text/javascript"></script>
.
.
usw.
Wenn die im Browser geladene Webseite diese Scriptfunktion aufruft, weiss die Funktin natuerlich, wo die die Daten hinschicken
muss.
Wie kann ich die Funktion aber aus einer Java-Applikation heraus aufrufen? (Bei Applets gibt es ja zb. eine Funktion Namens
getCodeBase(), dann geht das wohl. Aber meine Applikation hat natuerlich keine Codebase.
Weiss jemand, wie man das macht? Eventuell wuerfe es auch etwas bringen, wenn jemand wuesste, wie man diese Postback-funktion
aus der Adresszeile des Browsers heraus in einem Stueck mit der Seite selbst aufrufen kann (zb.
http://testen.zulutrade.com/TradeHistoryIndividual.aspx?pid=26203&javascript:__doPostBack('ctl00$box1$GridViewTradeHistory','Pa
ge$2') oder so aehnlich. Vermutlich muesste man dabei auch noch irgendwie die Quelldatei angeben, in der die Funktion liegt.
Stehe, wie gesagt, hier voellig auf dem Schlauch. Bin fuer jede Hilfe dankbar!