vorhandener PHP-Webservice in einer C++ Anwendung nutzbar?
-
@ Tobiking2:
Der Webservice (in PHP geschrieben) steht mir zur Verfügung.
Das WSDL beschreibt den Webservice vollständig.Ein Axis-C++-Server existiert nicht.
Ist dieser zwingend notwendig, um den Webservice nutzen zu können?Beim Erstellen des Axis-C++-Servers (läuft noch nicht, sehr hart
lauffähig zu bringen) fiel mir auf, dass ähnlich wie beim Calculator-Beispiel
(siehe generierte Calculator.cpp) in einer .cpp-Datei leere Funktionsrümpfe
generiert werden. Muss dort die eigentliche Funktionalität des Webservices hinein?
Das wäre sehr schlecht.
-
xyzasdf schrieb:
Ein Axis-C++-Server existiert nicht.
Ist dieser zwingend notwendig, um den Webservice nutzen zu können?Nein, statt des Axis-C++-Servers hast du ja den PHP-Webservice. Du musst dann statt der Calculator.wsdl auch die WSDL von deinem PHP-Webservice nehmen.
Was die leeren Funktionen angeht, weiß ich nicht genau wie es bei Axis für C++ funktioniert. Die Funktionen müssen ja zumindest deklariert sein, sonst kannst du die ja nicht in deinem Code benutzen. Aber Funktionsrümpfe sollte es theoretisch nur beim Server geben, den du nicht brauchst.
-
Das wäre die Ideallösung!
Bist du dir da ganz sicher?Habe die Vermutung, dass die 'Axis C++ Client Stubs'
zur Kommunikation mit dem Webservice 'Axis C++ Server Skeletons'
benötigen.
-
Guck mal ob du den Befehl für das Erstellen der Client Stubs richtig hast bzw. wirklich die client stubs generiest (parameter -sclient). Bei mir werden 2 Dateien (Calculator.cpp und .hpp) erstellt und die Funktionsrümpfe sind alle gefüllt. Lasse ich -sclient weg bekomme ich 7 Dateien wobei die Funktionsrümpfe leer sind.
-
Vielen Dank für deine Mühe Tobiking2!
Bei mir sind die Funktionsrümpfe bei den stubs auch nicht leer.
Aber bei den Skeletons (Server-Seite).
-
habe die Vermutung, dass der Axis-Client die dynamische Bibliothek
(libcalculator.so) auf Server-Seite benötigt um mit dem Webservice
kommunizieren zu können (?).
-
hat jemand Erfahrungen mit Webserive-Clients in C++.
Was empfiehlt sich zur Kommunikation mit dem Webservice?
-
weiß wirklich niemand bescheid?
-
schau dir mal gSOAP an.
-
Verwende nun gsoap. Klappt wunderbar.
Wenn man nur einen Client schreibt, muss kein
gsoap-Server aufgesetzt werden. Die Kommunikation
mit dem php-WebService funktioniert.