Ich habe eine Maschine mit einer in Delphi 6 erstellten
GUI, die ziemlich komplex und umfangreich ist. Diese Maschine soll jetzt über einen Webservice bestimmten Daten erhalten. D.h. ich muss den Webservice in das vorhandene Delphi 6 Projekt implementieren. Da mir dies aber nicht gelungen ist habe ich es mit Delphi 2010 versucht und war erfolgreich.
Alles was ich vom Kunden habe ist das
WSDL-Dokument.
XML-Parser usw. kenne ich mich nicht wirklich aus.
Viele Grüße
Sebastian
Mal anders gefragt, weißt du was ein Webservice (insbesondere einer der auf
SOAP basiert) ist und wie auch die Kommunikation zu einen Webservice erfolgt? Du musst in Delphi keine
WSDL importieren oder irgendwelche Klassen erzeugen um einen Webservice zu nutzen. Delphi erstellt basierend auf der
WSDL einfach nur eine Abstraktionsschicht zum Webservice, weil es (wenn es klappt) komfortabler ist, mehr steckt nicht dahinter. Die Methoden und ihre Parameter werden einfach ins
XML serialisiert(das siehst man schön bei SoapUI) und via http verschickt. Du könntest sogar einfach mit cURL eine Anfrage an den Webservice schicken, kurz alles was über http kommunizieren kann, kann auch den Webservice nutzen.
Wenn es dir jetzt also nur um paar Methoden geht, dann kannst du wie gesagt es einfach nativ über Delphi 6 verschicken, bzw. dir das
Indy Package installieren. Ist dein Webservice jedoch sehr umfangreich und enthält stark verschachtelte Typen, kannst du dich natürlich selber darum kümmern die Anfragen/Antworten automatisch ins
XML umzuwandeln oder du kaufst dir die Funktionalität ein (z.B.
http://www.clevercomponents.com/products/inetsuite/ die decken auch große Teile des WS-* Stacks ab). Du könntest auch eine eigene DDL verwenden, bedenke jedoch das die mit der Größe/Komplexität des Webservices skaliert.
Guten Morgen,
im Prinzip weiß ich schon was ein Webservice ist, jedoch klar bin ich auf dem ganzen Gebiet was jetzt Delphi betrifft ziemlich unerfahren. Man muss sich erst langsam einarbeiten.
Du meinst ich könnte es z.B. mit einem IdHTTP1 in Delphi 6 realisieren. Weiß zwar auch noch nicht so genau wie ich das aufbauen soll aber da finde ich bestimmt Tutorials.
Was auch Fakt ist das ich den Service über
SOAP-UI wunderbar ansprechen kann. Hier sehe ich auch wie der Header aufgebaut ist, ja?!