PHP und Java Kommunikation

hehe_me

Mitglied
Hallo,

ich stehe vor dem Problem das ich gerne über eine
Web-Frontend ( HTML, Javascript, PHP ) eine Suche machen
würde.

Dabei geschieht der eigentliche Suchvorgang mit einer
Java-Anwendung die den Lokalen Rechner aber auch das
Internet durchsuchen kann. Also quasi wie bei der Google-Suche.
Das Ergebnis sollte dann wieder im Web-Frontend angezeigt
werden.

Ich weiß aber leider nicht, wie ich die Kommunikation
in beide Richtungen gestalten kann..

Würde mich um konstruktive Vorschläge und Hilfe freuen, Danke.
 

sheel

I love Asm
Ach so, es ist also ein komplett eigenständiges Programm.
Sorry, hab irgendwie seit dem ersten Post an Applet gedacht.

Gibt es irgendwas, an dem man feststellen kann,
welche Programm- und welche Websiteinstanz zusammen gehören?
zB. Login erforderlich (und daher Vergleich der Benutzer möglich)?
 

Frezl

Erfahrenes Mitglied
Kurzes Gedankenspiel:

Informationen übergibt man an eine Anwendung am besten per Kommandozeilen-Parameter. Problem: Eine Web-Anwendung kann keine Kommandozeilenaufrufe machen.

Zweite Idee: Übergabe der Werte per Datei. Das könnte klappen. Das Java-Programm läuft im Hintergrund und wartet darauf, dass eine bestimmte Datei im Dateisystem liegt. Diese wird von der Webanwendung erzeugt, sobald der Suchbegriff eingegeben wurde. Die Antwort legt das Java-Programm wiederum in einer Textdatei ab, auf die die Web-Anwendung wartet.

Der Inhalt der Text-Dateien sollte in einer strukturierten Form stattfinden, z. B. per JSON oder XML.

Das waren jetzt nur Denkanstöße, ich hoffe, es postet noch jemand ne elegantere Lösung ;-)

Viele Grüße
Frezl
 

ikosaeder

Teekannen-Agnostiker
Php besitzt verschiedene Möglichkeiten, Kommandozeilenprogramme aufzurufen:
z.B. system(); exec(): popen().
http://php.net/manual/de/function.exec.php
Damit kann man durchaus das Java Programm ausführen und die Suchbegriffe als Parameter übergeben.
Die Ergebnisse kann man entweder direkt zurückgeben, oder aber in eine Datei schreiben und diese von PHP ausgeben lassen.

Überlegen kann man, ob es besser ist, das PHP die Sucheingabe parst und definierte Paramter liefert, oder ob man nur einen String an das Programm übergibt und mit Java die Eingabe parst.
Genauso kann das Java Programm einfachen Text ausgeben oder gleich formatierte HTML Seiten schreiben.
Die Formatierung müsste im ersten Fall dann dein PHP-Skript machen.
Ich habe es noch nicht probiert, aber ich stelle mir das so vor:
1. User macht Eingaben im Suchfeld
2. Beim Klick auf Searchbutton: PHP ruft system auf (system(javaprog "Suchbegriffe", returnVal)
3. JavaProg bearbeitet die Anfrage, schreibt eine Ergebnisseite und gibt den returnVal zurück (0 = erfolgreich, 1-n = Fehler)
4. Bei returnVal =0 liest PHP die Datei und gibt sie mit echo aus. Bei returnVal 1-n gibt PHP eine passende Fehlermeldung aus.
 
Zuletzt bearbeitet:

hehe_me

Mitglied
Erstmal danke für die Antworten und Lösungsvorschläge..

Ich lese mich gerade in SOAP ein.. Scheinbar - bin mir da aber noch nicht sicher -
kann man eine Kommunikation über Webservices mit SOAP zwischen PHP und einem JAVA
Programm aufbauen...

Ich werde es mal die Tage versuchen..