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? 😞





  • Verwende nun gsoap. Klappt wunderbar.

    Wenn man nur einen Client schreibt, muss kein
    gsoap-Server aufgesetzt werden. Die Kommunikation
    mit dem php-WebService funktioniert.


Anmelden zum Antworten