SOAP-Client in C++???



  • Da WebServices (SOAP) immer mehr an Bedeutung gewinnen und dafür hauptsächlich Java und .NET zum Einsatz kommen, frage ich mich, ob es auch schon Libs für C++ gibt?

    Dabei geht es mir nicht mal um die WebServices selbst (also die auf dem Server laufen), sondern um die Client-Entwicklung. Weiß jemand ob es z.B. für wxWidgets o.a. Libs Erweiterungen geben wird? Ist sowas in Arbeit?

    Kurze Info an die Nicht-Wissenden: WebServices sind keine WebAnwendungen (HTML-Oberflächen), sondern reine Dienste die Daten per SOAP zur Verfügung stellen. Soll heißen, auch ein Fat-Client (Windows- oder Linux-Anwendung) kann einen solchen WebService "fragen" und erhält dann Daten/Antwort im SOAP-Format.

    Mir ist bewusst, das SOAP eigentlich nur XML über http ist. Aber der ganze andere Kram wie WSDL-Auswertung usw. ist ja auch noch da. Unter Java und .NET gibts ja mittlerweile passende Tools. Für C++-Entwickler wäre das doch sichelich auch interessant? Ich denke, C++ darf diesen Trend auch nicht verschlafen.



  • SOAP ist absolut ekelig. Was haben nur die Leute in ihr Kaffee getan, dass die auf die Idee kommen ein Netzwerk-Protokoll mit einer absolut bloatigen Datenbeschreibungssprache zu entwerfen. Naja, Arbeitsspeicher und Netzanbindungen werden ja immer billiger 🙄

    so weit mein rant. aber hier mal ein paar links für dich 🙂

    http://www.cs.fsu.edu/~engelen/soap.html
    http://www.soapware.org/directory/4/implementations



  • Vielen Dank für die URLs kingruedi!

    Selbstverständlich ist SOAP nicht gerade performant, stimme dir hier voll und ganz zu. Aber leider setzt sich SOAP durch, wie es auch Java in einigen Bereichen getan hat.

    Unser Kunde (ein Autokonzern hier in Wolfsburg) wird immer stärker auf WebServices setzen, jedes Projekt will jetzt WebServices anbieten. Und das, nachdem sich in dem Konzern praktisch Java auf allen Fat-Client-Applikationen durchgesetzt hat. 😞

    Leider bin nur ich hier einer der wenigen die sich immer denken "Man man man, warum macht ihr sowas?". Alle anderen finden Java und WebServices ganz toll. Ich will also einfach informiert sein, um evtl. Kontra bieten zu können. 😉 Leider hört man überall hier in den Projekten "C++ ist umständlich, unmodern, man kann nicht so schnell entwickeln wie in Java, es ist nicht plattformunabhängig, nur in Java gibts echtes OO, usw. usf." Und ich bin mir sicher, das diese Stammtischgeschichten nicht nur hier herrschen, sondern auf diesem ganzen Planeten.



  • jo, leider kann man die Welt nicht ändern und dumme Manager, die ihren Kopf voll mit Buzzwords haben. Naja kann man nichts machen 😞



  • @king:
    Du hast nur kein Plan von XML. Das ist Alles ...

    @artchi:
    WSDL heißt web service difinition language dessen Bestanteil SOAP nist ..



  • prof82@work schrieb:

    @king:
    Du hast nur kein Plan von XML. Das ist Alles ...

    das kann vielleicht sein, trotzdem kann ich nicht den Sinn darin sehen, dass man ein Netzwerkprotokoll auf Basis eines Extremredundanten und schwer zu parsenden Datenbeschreibungsformat entwirft. Was bringt das für Vorteile?



  • Das Schlüsselprinzip heißt Standardisierung:
    SOAP ist der erste Protokollstandard der von fasst jeden Softwareunternehmen der Welt unterstützt wird. In den letzten 18 Monaten kam es zu eine verstärkten Anfrage meiner Kunden, die über Webservice Ihre Software und Stammdaten online aktualisieren wollen. Unabhängig in welcher Sprache Ihr Client geschrieben wurde. Habe wahrscheinlich in zwei Monaten wieder damit zu tun.

    Ob das Basisprotokoll in SOAP, XML_RPC, DCE oder ähnlichen erstellt wurde ist eigentlich egal. Aber SOAP ist der erste Standard der von fasst Allen unterstützt wird. Mit WDSL diffinierst Du die Schnittstelle mit denen Du u.a. auch über Binäreports zugreifen kannst. Den Webservice kannst Du dann mit UDDI zentral registrieren lassen, auf den dann auch fremde Clienst Ihre Schnittstellen dynamisch anpassen können und in den Webservice fahren können.

    Der Gesamttrend läuft in die Implemtierung von SOA - service oriented architecure - z. Z. standardisiert mittels GXA - global XML architecture.
    Zukünftige Unternehmenslösungen setzen sich aus einer Vielzahl von frei austauschbaren Anbieten zusammen (n. Preis, Leistung und Verfügbarkeit), wie Beratertätigkeiten, Marketingdaten, Finanzmarkt, Customers-Care, LogistiK, eMarkets, ERP etc., die irgendwo auf der Welt positioniert sind! - Totale Globalisierung!

    Es ist ja nicht so als ob Enterprise Archi´s mittels Komponentensysteme out sind, wie EJB, CORBA, COM+ etc. Du bist nur in der Umgebung Deiner Plattform/System gefangen.
    Merke: hetrogene Systeme, Cross-Plattform-Development, dymamische Schnittstelle => XML Schmierstoff.

    @artchi: EJB 2.0 arbeitet auch mit XML zwischen den Schichten 😉

    cu

    P84



  • stimmt

    SOAP hat so gesehen riesenvorteile bei der integration
    das es allerdings nicht die eierlegende wollmilchsau ist haben viele noch nicht begriffen.
    das ist jetzt ein schlagwort und web services sind "IN"
    habe selber schon welche entwickelt

    das ganze wird sich schon normalisieren und es wird sicher eine sehr nuetzliche und weitverbreitete technologie bleiben

    gomberl



  • Ich glaube niemand wird bestreiten dass Standard sehr wichtig sind. Insofern ist SOAP natürlich toll.

    Allerdings stört mich (und viele Andere auch) der Aufbau von SOAP - ich habe zwar noch nicht sehr viel damit gemacht, aber besondere Vorteile (ausser dass es ein akzeptierter Standard ist) habe ich noch nicht gefunden.



  • ich finde den aufbau sehr gut
    etwas aufgeblaeht aber sonst recht gut

    und das system mit UDDI und WSDL find ich spitze
    dynamische proxy generierung

    zB



  • Mhm, vielleicht waren meine Projekte auch nur zu klein um SOAP sinnvoll zu verwenden...

    Ich werds mir bei zeiten mal wieder näher ansehen.

    thx



  • Ich habe noch keinen Vergleichstest zwischen Corba und SOAP gemacht, vielleicht wäre es auch unsinnig. Nur frage ich mich, warum man auf das XML setzt, da es nun wirklich viel Overhead hat. Warum muß die Struktur im klartext "lesbar" sein? OK, zum debugen mag sowas hilfreich sein. Aber da hört der Vorteil auch schon in meinen Augen auf. Irgendwie wird das Arbeiten nicht schneller, obwohl die Hardware-Resourcen leistungsmäßig förmlich alles bisherige wieder sprengen. Dann kommt jemand mit was neuem an, was alles wieder relativiert. 😡

    Es gibt noch sehr viele Dinge hier (ich rede von meinem Arbeitsumfeld) die für mich unlogisch und unkonsequent sind. Der fachliche Abteilungsleiter z.B. hört von allen ITlern, wie toll OO doch ist. Wie toll WebServices sind. Und wie toll Java ist usw. Aber die neuen Projekte werden trotzdem noch auf relationalen DBMs aufgesetzt. Warum ist man hier nicht konsequent und setzt OODBMs ein?

    Für mich ist SOAP ein Rückschritt. Oder weiß jemand ob OO damit abgebildet werden kann? 😕



  • OO oder OR- DBMS
    weil OODBMS faktisch fuer die meisten anwendungen irrelevant sind.
    ORDBMS haben vorteile doch fuer die meisten problemfälle bringen sie nicht viel

    da haette ich ne gute graphik - ich scann sie mal beizeiten ein

    es muss nicht xml sein - aber die lesbarkeit ist auch vorteilhaft
    und per caching und cached proxy generierung muss man das wsdl file auch nur einmal lesen um den proxy zu generieren

    die method calls sind allerdings echt viel zu langsam
    ich wuerde mir eine standardisierte version wuenschen die das ganze komprimiert

    gomberl



  • @artchi:
    http://www.c-plusplus.net/forum/viewtopic.php?t=22790&postdays=0&postorder=asc&highlight=xml&start=45
    http://www.c-plusplus.net/forum/viewtopic.php?t=22220&highlight=xml

    <klugscheiss>

    Prof84 schrieb:

    Die Begeisterungsfähigkeit von XML ist Propotional zur Qualifikation und Erfahrung der Mitarbeiter. - QED!

    </klugscheiss>

    Die Abbildung der OO in SOAP funktioniert normalweise ganz leicht über XML Schema (noch ein Standard den Du Dir ankucken musst :D)

    Also ich habe mich bis heute nicht an den Glaubenskriegen beteidigt -
    welche Programmiersprache, welches OS, welches DBMS, welche IDE usw.!
    Ich verkaufe keine Programmiersprache oder Pradigmen! 😉
    Wenn ein Manager etwas haben will, weil er gehört hat wie tool etwas ist, ohne sich über den strategischen Nutzen seines eigenen Geschäftsprozess im klaren zu sein, dann ist das ein fachliches personelles Problem und kein Technisches. 😃

    @gomberl:
    Wieso? Du kannst auch RDBMS <-> OODBMS über XML transformieren. Das klappt sogar primar, wenn man noch dazwischen eine NXD (native XML database), wie z.B. Tamino einsetzt. Perfekt für den Einsatz von Cacheknoten. 😉

    Ich rechne im Webservice Bereich sogar mit einen Cutting Edge Hype, sobald GXA Lösungen einen bestimmten Marktanteil erreicht haben... 😋

    So, jetzt kümmer ich mich erstmal um die T-Wich*****... 😡



  • (ich finde die idee hinter xml, dass man ein einheitsformat hat, mit dem sich jeder auskennt und was man überall mit wenig aufwand bearbeiten kann nicht schlecht. nur verfehlt xml dies total, da das design von xml absoluter humbug ist und sich deswegen genau für die oben genannten ziele als ungeeignet erweist IMHO)

    Prof84 schrieb:

    seines eigenen Geschäftsprozess im klaren zu sein, dann ist das ein fachliches personelles Problem und kein Technisches.

    da spricht der freelancer. im endeffekt muss man natürlich so marketing gerecht denken, wenn man geld kassieren will.



  • kingruedi schrieb:

    ([...] nur verfehlt xml dies total, da das design von xml absoluter humbug ist und sich deswegen genau für die oben genannten ziele als ungeeignet erweist IMHO)

    Well, I disagree! ...

    kingruedi schrieb:

    [...] da spricht der freelancer. im endeffekt muss man natürlich so marketing gerecht denken, wenn man geld kassieren will.

    READ NOW THE TOP SECRET CARRIER HINT:
    Als Angestellter auch!! 😉



  • @prof84: mussm mir das einmal ansehen - bevor ich dazu was sagen kann
    klingt aber nicht schlecht

    kingruedi: kannst du mal ein paar fakten nennen warum es dieses ziel nicht erfuellt

    gomberl



  • @Prof84
    jo als angestellter natürlich auch. aber ich denke mal, dass gerade freelancer immer einem gewissen buzzword-druck unterliegen.

    @gomberl
    1. das format ist absolut parser unfreundlich
    2. das format ist viel zu redundant
    3. das format ist sehr komplex und es ist nicht leicht für jemand fachfremdes ein XML Dokument zu bearbeiten
    4. der XML Standard deckt zu wenige Dinge ab, so dass es hunderte Standards gibt, die sich teilweise überschneiden

    YAML löst IMHO viele der Probleme von XML, ist aber leider nicht so populär 😞


Anmelden zum Antworten