WebService - Wie nutzen?

Alle Fragen zur Netzwerkkommunikation
Antworten
Benutzeravatar
willi4willi
Lazarusforum e. V.
Beiträge: 169
Registriert: Sa 1. Nov 2008, 18:06
OS, Lazarus, FPC: Lazarus 3.8 FPC 3.2.2 x86_64-win64-win32/win64 x86_64-linux-gtk2
CPU-Target: i386, win64, arm

WebService - Wie nutzen?

Beitrag von willi4willi »

Hallo,

ich möchte Webservices nutzen und habe die Webservice-Tools (für Synapse) installiert.

Nun möchte ich einen einfachen Service zur Währungsumrechnung nutzen, den ich unter http://www.webservicex.net/ws/WSDetails ... =2&WSID=10 gefunden habe.

Das Einlesen der WSDL-Datei hat auch geklappt und es wurden die beiden Dateien CurrencyConvertor_proxy.pas erzeugt CurrencyConvertor.pas erzeugt.

In der CurrencyConvertor finde ich auch zwei Klassen. Doch bei der Verwendung mache ich irgendetwas falsch, denn der folgende Code gibt mir nur eine 0 zurück.

Code: Alles auswählen

 
procedure TForm1.Button1Click(Sender: TObject);
var sende : ConversionRate;
    empfange : ConversionRateResponse;
begin
  SYNAPSE_RegisterHTTP_Transport();
  sende:= ConversionRate.Create();
  empfange := ConversionRateResponse.Create();
  sende.FromCurrency:=EUR;
  sende.ToCurrency:=USD;
  Edit1.Text:=FloatToStr(empfange.ConversionRateResult);
  FreeAndNil(sende);
  FreeAndNil(empfange);
end;     
 
Eigendlich müsste 1.328 herauskommen.
Irgendwie fehlt etwas, nur was?

Kennt sich jemand mit dieser Problematik aus?

Viele Grüße

Willi4Willi
 

Viele Grüße

Willi4Willi

------------

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: WebService - Wie nutzen?

Beitrag von Christian »

abo
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Benutzeravatar
willi4willi
Lazarusforum e. V.
Beiträge: 169
Registriert: Sa 1. Nov 2008, 18:06
OS, Lazarus, FPC: Lazarus 3.8 FPC 3.2.2 x86_64-win64-win32/win64 x86_64-linux-gtk2
CPU-Target: i386, win64, arm

Re: WebService - Wie nutzen?

Beitrag von willi4willi »

Christian hat geschrieben:abo
Hallo Christian,

vielen Dank für Deine Antwort. Allerdings muss ich zugeben, dass ich sie leider nicht verstanden habe.

Willi4Willi
 

Viele Grüße

Willi4Willi

------------

Systemtrader
Beiträge: 3
Registriert: So 12. Mai 2013, 02:34

Re: WebService - Wie nutzen?

Beitrag von Systemtrader »

Kurse Abonnieren

Benutzeravatar
willi4willi
Lazarusforum e. V.
Beiträge: 169
Registriert: Sa 1. Nov 2008, 18:06
OS, Lazarus, FPC: Lazarus 3.8 FPC 3.2.2 x86_64-win64-win32/win64 x86_64-linux-gtk2
CPU-Target: i386, win64, arm

Re: WebService - Wie nutzen?

Beitrag von willi4willi »

Hallo!

Nachdem ich nun einige Tage im Internet nach Kursen zur Verwendung der Webservice-Tools erfolglos gesucht und die Beispiele aus dem svn wegen fehlender Dateien nicht zum Laufen bekommen habe, gebe ich auf.

Schade! Es ist bestimmt ein tolles Tool, wenn man es zu nutzen weiß.

Ich versuche jetzt einen anderen Weg.

Viele Grüße

Willi4Willi
 

Viele Grüße

Willi4Willi

------------

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: WebService - Wie nutzen?

Beitrag von m.fuchs »

Hallo,

hatte den Thread hier leider übersehen, deswegen erst jetzt die Nachricht. Zum Umrechnen von Währungen würde ich keinen Webservice verwenden. Bei jeder Operation erst einen SOAP-Request zu machen ist viel zu aufwändig. Unter http://www.ecb.europa.eu/stats/eurofxre ... -daily.xml findest du die offiziellen Wechselkurse der EZB (täglich aktualisiert um 15:00 Uhr CET). Diese kannst du speichern und dann die Umrechnung selber machen. Das ist ja nicht so aufwändig.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Benutzeravatar
willi4willi
Lazarusforum e. V.
Beiträge: 169
Registriert: Sa 1. Nov 2008, 18:06
OS, Lazarus, FPC: Lazarus 3.8 FPC 3.2.2 x86_64-win64-win32/win64 x86_64-linux-gtk2
CPU-Target: i386, win64, arm

Re: WebService - Wie nutzen?

Beitrag von willi4willi »

Danke Michael für Deinen Tipp!

Mir ging es allerdings in erster Linie ganz allgemein darum, aus Lazarus/Freepascal heraus Webservice zu nutzen.
Bevor ich das Rad neu erfinde, dachte ich die Webservice-Toolbox zu verwenden. Laut Beschreibung soll es ja damit recht einfach sein.
Nachdem das Beispiel aber nicht funktionierte, weil einige Dateien fehlten, habe ich mir das einfache Beispiel der Währungsumrechnung ausgesucht
(zwei Werte senden - ein Wert zurück).

Ich werde in der Zukunft etwas aufwendigere Werbservice nutzen müssen. Da würde sich die Verwendung von fertigen Tools schon eher lohnen, ehe man sich durch die XML-Dateien quält.

Viele Grüße

Willi4Willi
 

Viele Grüße

Willi4Willi

------------

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: WebService - Wie nutzen?

Beitrag von m.fuchs »

Ah ok. Ich kenne das Problem auch, das WST konnte bei mir keinerlei Methoden in der WSDL finden. Ist zwar sehr ärgerlich, aber SOAP und WSDL sind nicht gerade einfache Themen. Ich versuche dann auf Alternativen wie JSON-RPC und REST auszuweichen.

Für einen Zugriff per SOAP habe ich mir einen kleinen Mapper geschrieben, der die ankommenden XML-Daten dann wenigstens automatisch in die Datenklassen überführt. Ist zwar nicht ganz so bequem, aber ausreichend.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Antworten