Share via


Aufbau der Lebensdauer von XML-Webdiensten

Dieses Thema bezieht sich auf eine veraltete Technologie. XML-Webdienste und XML-Webdienstclients sollten nun mithilfe der folgenden Technologie erstellt werden: Windows Communication Foundation.

Der Prozess beim Ausführen eines XML-Webdienstaufrufs ist dem Prozess ähnlich, der beim Ausführen eines regulären Methodenaufrufs stattfindet. Der Hauptunterschied besteht darin, dass Sie keine Methode aufrufen, die sich in der Clientanwendung befindet, sondern eine Anforderungsnachricht über das angegebenen Transportprotokoll, zum Beispiel HTTP, generieren. Da sich die XML-Webdienstmethode auf einem anderen Computer befinden kann, müssen die Informationen, die der XML-Webdienst zum Verarbeiten der Anforderung benötigt, über das Netzwerk an den Server übergeben werden, der den XML-Webdienst hostet. Der XML-Webdienst verarbeitet die Informationen und sendet die Antwort über das Netzwerk zurück an die Clientanwendung.

Die folgende Abbildung zeigt die Kommunikation zwischen einem Client und einem XML-Webdienst.

Lebensdauer von XML-Webdiensten

Lebensdauer von XML-Webdiensten

Im Folgenden wird die Sequenz der Ereignisse beschrieben, die beim Aufruf eines XML-Webdiensts stattfinden:

  1. Der Client erstellt eine neue Instanz einer Proxyklasse des XML-Webdiensts. Dieses Objekt befindet sich auf demselben Computer wie der Client.

  2. Der Client ruft eine Methode für die Proxyklasse auf.

  3. Die Infrastruktur auf dem Clientcomputer serialisiert die Argumente der XML-Webdienstmethode in eine SOAP-Nachricht und sendet sie über das Netzwerk an den XML-Webdienst.

  4. Die Infrastruktur empfängt die SOAP-Nachricht und deserialisiert das XML. Sie erstellt eine Instanz der Klasse, die den XML-Webdienst implementiert, und ruft die XML-Webdienstmethode auf, wobei das deserialisierte XML als Argument übergeben wird.

  5. Die XML-Webdienstmethode führt ihren Code aus und legt schließlich den Rückgabewert und die out-Parameter fest.

  6. Die Infrastruktur auf dem Webserver serialisiert den Rückgabewert und die out-Parameter in eine SOAP-Nachricht und sendet sie über das Netzwerk zurück zum Client.

  7. Die XML-Webdienstinfrastruktur des Clientcomputers empfängt die SOAP-Nachricht, deserialisiert XML in den Rückgabewert und die out-Parameter, und übergibt sie an die Instanz der Proxyklasse.

  8. Der Client empfängt den Rückgabewert und die out-Parameter.

Erstellen eines XML-Webdiensts

Das Erstellen eines XML-Webdiensts ist dem Erstellen einer Komponente ähnlich, die programmgesteuerten Zugriff auf ihre Anwendungslogik bereitstellt. Zum Erstellen eines XML-Webdiensts benötigen Sie Funktionen, die den zur Verfügung zu stellenden Dienst bilden, eine Dienstbeschreibung, die die Verwendung des Diensts definiert, sowie eine Infrastruktur, die den Empfang und die Verarbeitung von Anforderungen sowie das Senden von Antworten unterstützt. Glücklicherweise wird ein Großteil der erforderlichen Infrastruktur für Sie bereitgestellt.

Erstellen eines XML-Webdienstclients

Da XML-Webdienste über URLs, HTTP und XML zugänglich sind, können Programme auf einer beliebigen Plattform und in einer beliebigen Programmiersprache auf XML-Webdienste zugreifen. Da sowohl Clients als auch XML-Webdienste aufgrund der dezentralisierten Natur der XML-Webdienste als autonome Einheiten fungieren, gibt es zahllose Möglichkeiten für die Nutzung eines XML-Webdiensts. So kann beispielsweise ein Aufruf an einen XML-Webdienst in eine Webanwendung, eine Middlewarekomponente oder sogar einen anderen XML-Webdienst integriert werden. Unabhängig von der Form des XML-Webdienstclients muss für den Aufruf eines XML-Webdiensts lediglich eine richtig formatierte Anforderungsnachricht gesendet werden, die der veröffentlichten Dienstbeschreibung für diesen XML-Webdienst entspricht. Je nach der Natur des XML-Webdiensts könnte er dafür eine Antwortnachricht senden. Der Absender der Anforderung muss dann in der Lage sein, die notwendigen Informationen aus dieser Nachricht zu extrahieren.

Siehe auch

Konzepte

Übersicht über XML-Webdienste