Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Webservice - Frage zur Rückmeldung (https://www.delphipraxis.net/118614-webservice-frage-zur-rueckmeldung.html)

Xeres 11. Aug 2008 15:20


Webservice - Frage zur Rückmeldung
 
Hallo,

ich nutze Delphi 2007 und habe ein Enduser-Produkt erstellt, dass Daten an unseren Webservice hier Inhouse überträgt.
Mein Webservice meldet an die Gegenseite (also dem Enduser-Produkt), ob der Aufruf geklappt hat anhand eines Boolean-Rückgabewert in der Funktion.

Delphi-Quellcode:
function Tws_IntfSample.setData(aryData : TDataArray) : Boolean; stdcall;
Bisher bin ich immer davon ausgegangen, dass die Funktion, sobald Sie fertig ausgeführt wurde, auch eine Antwort zur Gegenseite schickt. Erst wenn diese Gegenseite auch den Rückgabewert bekommt, werden die Daten nicht erneut rausgesendet.
Leider musste ich nun feststellen, dass viele dieser Enduser nicht umbedingt auf dem aktuellen Stand der Technik sind und teilweise auch noch mit Modem's arbeiten. Ich glaube daher, dass es vereinzelt zu dem Fall kam, dass die Daten an den Webservice gesendet wurden, wir diese importiert haben, aber ein Rückmeldung zur Gegenseite nicht stattfinden konnte (evtl. Timeout oder sowas).

Meine Frage nun:
Ist mein angenommener Fall, dass Daten übertragen werden, aber die Rückmeldung nicht stattfinden kann, überhaupt möglich?
Funktionieren Webservice's so, dass dieser Fall auftreten kann?

Über einen Link zum Thema Webservice und ihre Technik wäre ich ebenfalls dankbar, falls einer spontan einen hat.


Danke

ferby 11. Aug 2008 18:33

Re: Webservice - Frage zur Rückmeldung
 
Hallo,

also ich kann dir jetzt keinen Link anbieten, aber meines Wissens ist es durchaus möglich, dass keine Rückmeldung statt findet.
Es tritt auch in der Praxis sehr oft auf.

Es gibt diverse Korekturverfahren, die eingesetzt werden, um das zu verhindern, allerdings ist das je nach Webservice verschieden.


Zitat:

Funktionieren Webservice's so, dass dieser Fall auftreten kann?
WIe du bereits vermutest, ist zb ein Timeout genau so ein Fall.


Ein andere wäre, das die Verbindung einfach unterbrochen wird.



Allerdings mehr helfen wird man dir nur können, wenn du sags, wie du eine Rückmeldung realisierst.

Xeres 12. Aug 2008 08:44

Re: Webservice - Frage zur Rückmeldung
 
Zitat:

Zitat von ferby
Allerdings mehr helfen wird man dir nur können, wenn du sags, wie du eine Rückmeldung realisierst.

Hallo,

danke für deine Antwort.
Die Rückmeldung ist, wie oben beschrieben, der Rückgabewert der Funktion. Ich habe hier nicht ungewöhnliches realisiert.
Meine Frage zielte eher in die Richtung, ob der Webserver überhaupt meinen Webservice ausführt, wenn er keine Verbindung zur Gegenseite herstellen kann.
Rein logisch würde ich den Ablauf wie folgt skizzieren. Bitte korrigiert mich, falls meine Annahme falsch ist:

1.) Verbindung zum Webservice wird aufgebaut
2.) Daten werden an den Webservice gesendet
3.) Verbindung zum Webservice ist abgeschlossen und wird geschlossen
4.) Webservice wird ausgeführt und Rückgabewert wird ermittelt
5.) Verbindung zur Gegenseite wird aufgebaut um den Rückgabewert der Funktion zu übermitteln
6.) Rückgabewert wird von der Gegenseite empfangen.
7.) Verbindung wird geschlossen

Zwischen 5 und 6 kam es nun zum Timeout oder Verbindungsabbruch.


Liege ich hier richtig mit meiner Annahme?


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz