# Javascript Funktion aus Java Anwendung ausführen



## dasheddot (15. Jan 2009)

Hey!

Hab mal ein Problem an dem ich die letzten 4 Stunden vergeudet habe ^^
Hoffe ihr könnt mir sinnvoll und konstruktiv helfen!


Zur Aufgabe:

Ich muss aus einer externen Homepage Daten auslesen,
sprich einfach den HTML Sourcecode laden und dann parsen.

Die Homepage wird wie folgt ausgelesen:


```
URL url1 = new URL(url);
            URLConnection conn = url1.openConnection();
            conn.connect();
            InputStream is = conn.getInputStream();
            html_FILE = new Scanner(is).useDelimiter("\\Z").next();
            System.out.println("OUTPUT:\n");
            System.err.println(""+ html_FILE);
```

Zudem werden Cookies gesetzt die ich mit einer Funktion speichere und für jede neue URL wieder verwende.
Cookie sollte also kein Problem sein.

Die Seite besteht aus 3 Frames was schonmal ein Problem ist.
Im Mainframe wird der gewünschte Content angezeigt,
der durch eine Javascriptfunktion "load()" erzeugt wird nachdem man auf einen Link klickt.

Wenn ich die daraus resultierende URL im Browser verwende bekomme ich die gewünschten Daten.
In der Java-Anwendung jedoch nicht. Wahrscheinlich eben deswegen weil ich den Sourcecode nur downloade,
deren beinhalteten Javascript-Funktion aber nicht AUSFÜHRE.

Diese Javascript-Funktion wiederum liest mit SQL-Befehlen aus einer Datenbank.
Auf die hab ich logischerweise keinen externen Zugriff, sonst würd ich ja nicht so einen Aufwand betreiben ;-)


Hat jemand eine Idee wie ich diese Funktion nun aus einer Java-Desktopanwendung heraus ausführen kann
und deren Ergebnis wie im Codefragment als HTML-Code MIT den Daten erhalte?


hoffe ich habe mich verständlich ausgedrückt und hoffe auf baldigste Hilfe (Zeitdruck :-( )

Danke schon im Voraus!

mfg
dasheddot


----------



## HoaX (16. Jan 2009)

htmlunit und httpunit unterstützen beide javascript


----------



## dasheddot (17. Jan 2009)

Einfacheres gibt es nicht oder?

hat jemand damit erfahrung?


----------



## HoaX (18. Jan 2009)

httpunit/htmlunit sind doch schon verdammt einfach. was erwartest du noch? soll sich das programm selbst schreiben?


----------



## dasheddot (18. Jan 2009)

hab eigentlich gemeint viel zu überladen für meine verhältnisse.
hätt eigentlich nur ein mini-programm werden sollen und jetzt artet das schön langsam richtig aus ^^
aber ok, danke werd mir diese libs mal zu gemüte führen.

danke für den hinweis auf jeden fall mal
mfg


----------



## HoaX (19. Jan 2009)

kannst ja in den source schauen wie die die methoden aufrufen und das entsprechend auch so machen


----------

