WSDL-Dokumente für Web-Service-Anwendungen generieren

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Server mit Web-Service-Unterstützung schreiben


Um den Client-Anwendungen mitzuteilen, welche Web-Services durch Ihre Anwendung bereitgestellt werden, können Sie ein WSDL-Dokument publizieren, in dem die aufrufbaren Schnittstellen beschrieben werden und angegeben ist, wie diese Schnittstellen aufzurufen sind.

Um ein WSDL-Dokument zu publizieren, in dem der Web-Service beschrieben wird, nehmen Sie in das Web-Modul eine Soap.WSDLPub.TWSDLHTMLPublish-Komponente auf. (Diese Komponente wird vom SOAP-Server-Anwendungs-Experten standardmäßig hinzugefügt.) TWSDLHTMLPublish ist eine Auto-Dispatch-Komponente, d.h. sie antwortet automatisch auf eingehende Botschaften, die eine Liste der WSDL-Dokumente für Ihren Web-Service anfordern. Geben Sie mithilfe der Eigenschaft WebDispatch die Pfadinformationen der URL an, die von den Clients benötigt werden, um auf diese WSDL-Dokumente zuzugreifen. Der Web-Browser kann daraufhin die Liste der WSDL-Dokumente anfordern, indem er eine URL angibt, in welcher der Standort der Server-Anwendung sowie der in der Eigenschaft WebDispatch vorliegende Pfad enthalten sind. Diese URL sieht beispielsweise folgendermaßen aus:

  http://www.myco.com/MyService.dll/WSDL 
Tipp: Wenn Sie stattdessen eine physische WSDL-Datei verwenden möchten, können Sie das WSDL-Dokument in Ihrem Web-Browser anzeigen und speichern, um eine WSDL-Dokumentdatei zu generieren.
Hinweis: Außer dem WSDL-Dokument generiert die THWSDLHTMLPublish-Komponente ein Inspection-Dokument für den Web-Service, um den Dienst für automatisierte Werkzeuge zu beschreiben. Die URL für dieses Dokument sieht in etwa folgendermaßen aus:
  http://www.myco.com/MyService.dll/inspection.wsil 

Es ist nicht erforderlich, das WSDL-Dokument mithilfe derselben Anwendung zu publizieren, die Ihren Web-Service implementiert. Sie können stattdessen eine zweite Anwendung erstellen, die lediglich zum Publizieren des WSDL-Dokuments dient, indem Sie den Code, durch den die Implementierungsobjekte implementiert und registriert werden, weglassen und nur den Code aufnehmen, der zum Definieren und Registrieren von aufrufbaren Schnittstellen, Remotable-Klassen, die komplexe Typen darstellen, sowie von Remotable-Exceptions dient.

Wenn Sie ein WSDL-Dokument publizieren, wird standardmäßig angegeben, dass die Dienste unter derselben URL verfügbar sind, unter der auch das WSDL-Dokument publiziert wurde (jedoch mit einem anderen Pfad). Wenn Sie mehrere Versionen der Web-Service-Anwendung verteilen oder das WSDL-Dokument mit einer anderen Anwendung als derjenigen publizieren möchten, durch die der Web-Service implementiert wird, müssen Sie dem WSDL-Dokument aktualisierte Informationen zum Auffinden des Web-Service hinzufügen.

Verwenden Sie zum Ändern der URL den WSDL-Administrator. Der erste Schritt ist die Aktivierung des Administrators. Dies geschieht durch Setzen der Eigenschaft AdminEnabled der Komponente TWSDLHTMLPublish auf True. Wenn Sie anschließend mit Ihrem Browser eine Liste der WSDL-Dokumente anzeigen, enthält dieser auch eine Schaltfläche für deren Verwaltung. Mit dem WSDL-Administrator geben Sie die Adressen (URLs) an, unter denen Sie Ihre Web-Service-Anwendung installiert haben.

Siehe auch