Aus Java eine Javascript Funktion aufrufen

Status
Nicht offen für weitere Antworten.

copter

Mitglied
Hallo,

ich bin gerade am Umsteigen aus der .Net Welt nach Java &Co. .
Ich habe ein kleines Problem wo ich nicht so richtig weiter weiß. Evtl. kann mir ja einer von euch helfen:

Ich habe eine Webseite die mittels Javascript Funktionen über eine Eingabemaske ein paar Funktionalitäten zur Verfügung stellt (Ein/Ausgabe von Werten die weiterverarbeitet werden). Nun möchte ich den Webbrowser umgehen und die Javascript Funktionen direkt aus meiner Java-Anwendung (wird später ein Webservice) aufrufen.
Wie kann ich sowas mit Javabibliotheken lösen?
Ich habe schon Richtung LiveConnect (Klasse netscape.javascript.JSObject) geschaut, bin da aber nicht so richtig schlau draus geworden.
Wie würdet ihr die Sache angehen? Evtl. fällt euch auch ein Stichwort ein, mit dem ich weiter suchen kann.

Danke schonmal
 

Noctarius

Top Contributor
Wie wäre es mit Mozilla Rhino? Das ist die Javascript Lib von Mozilla, die ist komplett in Java implementiert, ab Java 1.6 fest im Umfang des JDK (JRE glaub ich auch) und Kann einfach über das in Java 1.6 eingeführte ScriptEngine Zeugs instanziert werden :)
 
S

Spacerat

Gast
Das LiveConnect von dem du da redest gilt für Applets und nur für Applets. Schliesslich dann auch nur für Applets, die innerhalb eines Contents in einem JavaScript-Fähigen Browser laufen. Soweit ich weiss, war LiveConnect grösstenteils (wenn auch nicht alleine) dafür verantwortlich, das Applets sicherheitstechnisch in Verruf gerieten, weil sie dadurch zusätzlich zu den eigenen Sicherheitslücken auch noch die von JavaScript erbten (z.B. Code-Injection). Ich sag' mal: "Sei froh, das du daraus nicht schlau geworden bist, denn von LiveConnect kann ich nur abraten."
@Noctarius: Rhino? Gleich mal googlen.
 

copter

Mitglied
Danke erstmal für die Antworten.

Ich hatte nen kleinen Denkfehler ;-)
@maki: Da hast du recht. Ich will ja auch clientseitig mit Javascript arbeiten.
Ich will quasi die Funktion des Webbrowsers (mittels Javascript auf das Webinterface zugreifen) in mein Javaprog bringen.
Ich weiß, ich drück mich grad bissel uneindeutig aus....

Ich werd mir das Rhino mal anschaun.

Danke
 
M

maki

Gast
Ich will quasi die Funktion des Webbrowsers (mittels Javascript auf das Webinterface zugreifen) in mein Javaprog bringen.
Hat deine App denn einen Webbrowser? ;)

Wenn du ein konkretes Beispiel hättest wäre es vielleicht für alle klarer.
 

copter

Mitglied
hehe, also nochmal meine Grundidee:

Ich habe eine (lokale) Webseite über die serverseitig einige Funktionen zur Verfügung gestellt werden: z.B. Pseudocode
Code:
int summiere(int a, int b)
Derzeit habe ich über den Browser die Möglichkeit mittels Clientside Javascript die Funktion aufzurufen und die Rückgabewerte anzuzeigen.

Was ich möchte:
Ich möchte in meinem Javaprog die Funktionen (z.b. "summiere") des Webservers aufrufen können und auch Rückgabewerte vom Server zurück erhalten.

Geht sowas mit Rhino? Bis jetzt hab ich es nur hinbekommen kleine Javascripte direkt auf dem Client auszuführen...

Danke
 

Noctarius

Top Contributor
Du kannst doch einfach die URL abrufen, wie es das JS normal auch macht. Ansonsten gäb es noch HttpUnit das ist ein simulierter Webbrowser mit Javascript Unterstüzung (durch Rhino).
 

copter

Mitglied
Du kannst doch einfach die URL abrufen, wie es das JS normal auch macht. Ansonsten gäb es noch HttpUnit das ist ein simulierter Webbrowser mit Javascript Unterstüzung (durch Rhino).

Ja, ich könnte mir auch eine eigene HTTP-GET Anfrage bauen. Ich dachte nur, ich kann da gleich die JS-Funktionen in mein Prog einbinden und mir die Handarbeit mit den URLs ersparen...

Ich schau mir HttpUnit mal an.
 

copter

Mitglied
so richtig gefällt mir der Gedanke den HTTP-Get Aufruf "manuell" zu generieren nicht, da einige Argumente laufzeitabhängig (vom Webserver) sind und ich die nicht jedesmal neu bestimmen möchte. Auf den Server selbst habe ich keinen Einfluß.
Außerdem würd ich mir das Parsen vom HTML-Body der Antwort ersparen wollen bzw. die vorhandenen JS nutzen wollen.

Rhino fehlen halt solche Clientside JS Objekte wie z.B. Document von Hause aus, wenn ich das richtig gelesen habe (bzw. bekomm ich Compilerfehler wie "sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "document" is not defined. (<Unknown source>#1) ..." )
 

copter

Mitglied
Ich hab mir jetzt doch die HTTP-Get aufrufe selber gebastelt, und komplett auf Javascript verzichtet. Da die Antworten des Webservers "nicht ganz" standartkonform sind, sind die vorgefertigten "Browser-Libs" (httpUnit) nicht damit zurechtgekommen.

Danke nochmal für die Anregungen
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
jeff98 Wie kann man in Java eine Zeichenformation ausgeben? Java Basics - Anfänger-Themen 9
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
berserkerdq2 Findet eine parallele Verarbeitung in Java bei Threads erst statt, wenn man die Methoden auch synchronized? Und wie sieht bei Conditions aus? Java Basics - Anfänger-Themen 8
JordenJost Java ist auch eine Insel für Anfänger Java Basics - Anfänger-Themen 2
sserio Java Fx, wie erstellt man einen EventHandler, der durch das Drücken eines Button Texte in eine Table view einfügt Java Basics - Anfänger-Themen 17
A Wenn eine Zahl durch 7 teilbar ist, soll statt der Zahl ein ‘*‘ angezeigt werden. java? Java Basics - Anfänger-Themen 47
K Präzedenregeln in Java sagen, dass +expr und -expr vor + von Addition und - von Addition stehen, warum wird dann z. B. a+b als eine Addition ausgeführ Java Basics - Anfänger-Themen 7
J Alle .java Dateien von einem Verzeichnis in eine Zip speichern Java Basics - Anfänger-Themen 2
TimoN11 Java - Eine oder mehrere Eingaben möglich machen Java Basics - Anfänger-Themen 6
C Methoden Java ist auch eine Insel Listing 2.40 Recursion Java Basics - Anfänger-Themen 7
M Wie kann ich eine Eingabe im Java-Swing übergeben? Java Basics - Anfänger-Themen 1
C Java liest nur eine Zeile ein Java Basics - Anfänger-Themen 3
Aprendiendo Gibt es in der JAVA-API eine Funktion, die eine Dezimalzahl in eine binäre Zahl umwandelt? Java Basics - Anfänger-Themen 8
F Erste Schritte Java ist auch eine Insel kaufen? Java Basics - Anfänger-Themen 2
B Hilfe bei eine Java-Methode Java Basics - Anfänger-Themen 4
M Erste Schritte Java prüfen ob eine der Möglichkeiten erfüllt ist Java Basics - Anfänger-Themen 2
W Wie kann ich in Java eine Kurve aus Punkten zeichnen? Java Basics - Anfänger-Themen 25
1 Im Java Projekt eine txt datei einbinden? Java Basics - Anfänger-Themen 8
A Hat jemand einen ratschlag, wie java beim replaceALL eine geschweifte klammer erkennt ? Java Basics - Anfänger-Themen 5
D Java erkennt eine deklarierte Variable nicht Java Basics - Anfänger-Themen 2
I Java Eingabe aus einer anderen Klasse in eine andere an Konstruktor übergeben Java Basics - Anfänger-Themen 4
D Türme von Hanoi in "Java ist auch eine Insel" Java Basics - Anfänger-Themen 4
J für eine java klausur Java Basics - Anfänger-Themen 5
Y Wie setze ich genau eine Stückliste (UML) in Java um? Java Basics - Anfänger-Themen 9
S mit Java eine EXE im vordergrund ausführen Java Basics - Anfänger-Themen 3
N Java UML: Eine Frage zu public-Variablen Java Basics - Anfänger-Themen 19
I Variablen Wie initialisiert man in Java eine Variable ohne das Setzen von 0 oder einer anderen Zahl? Java Basics - Anfänger-Themen 8
DaniSahne96 Frage zu Java ist auch eine Insel Java Basics - Anfänger-Themen 12
V Mit JS eine JAVA Methode aufrufen Java Basics - Anfänger-Themen 5
M Mit Java eine HTML-Seite speichern Java Basics - Anfänger-Themen 11
B Variablen Wie macht man eine call by reference mit primitiven Datentypen in Java? Java Basics - Anfänger-Themen 2
J Geldberechner(aus Java ist auch eine Insel) Java Basics - Anfänger-Themen 6
G Erste Schritte JAVA ist auch eine Insel Java Basics - Anfänger-Themen 7
P Java Object das eine HTML Datei repräsentiert Java Basics - Anfänger-Themen 19
A Wie mit Java eine .vbs Datei starten lassen? Java Basics - Anfänger-Themen 4
A Eine Frage zu AWt in JAVA, wie wähle ich ein Punkt aus`? Java Basics - Anfänger-Themen 4
3 Eine HTML Datei in eine Java Datei umschreiben Java Basics - Anfänger-Themen 23
M Was ist genau eine Abstraktion in java Java Basics - Anfänger-Themen 3
H Reflexion: Eine Methode, beliebig viele Parameter (Java 1.4.2) Java Basics - Anfänger-Themen 8
T Java Webstart soll eine Datei speichern Java Basics - Anfänger-Themen 2
T Frage aus dem Buch JAVA ist auch eine Insel Java Basics - Anfänger-Themen 11
N Per Java in ein HTML-Suchfeld eine Variable reinschreiben Java Basics - Anfänger-Themen 4
M Spielt der Debugger bei java eine große Rolle Java Basics - Anfänger-Themen 3
M Aus wieviel Klassen darf in Java eine (Programm)besitzen? Java Basics - Anfänger-Themen 21
2 Mit Java in eine WORD-Datei schreiben Java Basics - Anfänger-Themen 18
X Via Java auf eine Webseite einloggen. Java Basics - Anfänger-Themen 6
R Java, Bluetooth: mit PC eine SPP Verbindung aufbauen Java Basics - Anfänger-Themen 1
schroedi Wie startet man eine JAVA EE Projekt Java Basics - Anfänger-Themen 22
S Codebeispiel aus Java ist auch eine Insel. Java Basics - Anfänger-Themen 2
J Ein Java-Programm in eine *.exe Datei 'packen' Java Basics - Anfänger-Themen 20
G Eine HP mit Java läuft nicht Java Basics - Anfänger-Themen 4
J Aus einem Java Programm eine .java datei Kompilieren Java Basics - Anfänger-Themen 6
G Java Klasse durch eine andere Java Klasse starten? Java Basics - Anfänger-Themen 13
M Java Quellcode in eine exe datei umwandeln Java Basics - Anfänger-Themen 4
W Klasse in eine extra Java-Datei Java Basics - Anfänger-Themen 21
M Mit Java eine neue DB anlegen über XAMPP? Ist das möglich ? Java Basics - Anfänger-Themen 4
V Wie kann ich mit Java eine Tastatureingabe simmulieren ? Java Basics - Anfänger-Themen 26
vogella Mit Java eine Webpage schreiben Java Basics - Anfänger-Themen 7
P mit Java auf eine PowerPoint-Präsentation zugreifen Java Basics - Anfänger-Themen 3
M Datenbankabfrage über eine Java Oberfläche Java Basics - Anfänger-Themen 3
C eine dringende bitte an alle java-programmierer Java Basics - Anfänger-Themen 4
S Daten in eine Variable in einem anderen Java File schreiben Java Basics - Anfänger-Themen 10
T Eine HTML Datei mit Java bear. Wie soll kann man anfangen? Java Basics - Anfänger-Themen 11
T Newbie Frage Eine Java Anwendung fernsteuern? Java Basics - Anfänger-Themen 4
G eine Frage zur Generic Java ? Java Basics - Anfänger-Themen 8
B Mit Java eine Website "steuern" Java Basics - Anfänger-Themen 18
A aus Java-Code eine jar-Datei ausführen Java Basics - Anfänger-Themen 8
T Java ist auch eine Insel: Beispielprogramm fehlerhaft? Java Basics - Anfänger-Themen 2
G Wie kann ich mit Java eine Textdatei auslesen? Java Basics - Anfänger-Themen 20
B Eine Linie zeichnenmit Java, ich verstehe das einfach nicht Java Basics - Anfänger-Themen 4
C Aus Java eine Email wo der Body den Inhalt aus einer .... Java Basics - Anfänger-Themen 6
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben