Web Services: Implementierung der Business-Logik

Man wird die Definition der selbst erstellten SOAP-Header-Klasse am Anfang beider Web Services entdecken. Jeder Web Service muss seine eigene SOAP-Header-Klasse definieren, daher werden die polymorphen Authenticate()-Methoden in der WSUtil-Klasse benötigt.

Außerdem gibt es hier eine öffentliche Eigenschaft, die als Instanz der SOAP-Header-Klasse implementiert ist. Diese Eigenschaft wird auf die entsprechenden Werte des SOAP-Headers gesetzt, der von Nutzern des Web Service übergeben wird, wenn sie eine Web-Methode aufrufen. Um diese Verknüpfung zu erstellen, muss die Web-Methode über eine entsprechende Signatur verfügen:


Der SoapHeader-Attribut-Konstruktor übernimmt einen Parameter (in diesem Fall „BookSecurityCtx“) und muss mit dem Namen der innerhalb der Web Service-Klasse selbst definierten Eigenschaft übereinstimmen. Wenn die Web-Methode diesen SOAP-Header empfängt, setzt sie automatisch die Klassen-Eigenschaft auf die Werte des SOAP-Headers und erlaubt so den Zugriff auf die Daten. Der Parameter Required teilt den Nutzern des Web Service mit, dass dieser SOAP-Header unbedingt erforderlich ist, da sonst der Web Service nicht funktioniert.

Wenn man sich den gesamten Code anschaut, wird man feststellen, dass anstelle einer Duplizierung des Authentifizierungs-Codes in jeder Web-Methode einfach die Sicherheitskontext-Variable an die Authenticate()-Methode übergeben wird, die den eigentlichen Authentifizierungs-Prozess ausführt.

Der Web Service BookWS stellt zwei zusätzliche Methoden bereit, die nicht den Anforderungen entsprungen sind: GetBooksByIds und GetAvailabilityDs. Dies sind Hilfsmethoden, die zur Unterstützung der Benutzer der Web Services dienen. GetBooksByIds gibt eine Liste von Büchern aus, die auf einer Array-Liste der Primärschlüssel Book ID beruht. GetAvailabilityDs gibt ein DataSet aus, das alle möglichen Verfügbarkeitsoptionen für ein bestimmtes Buch enthält.

Wenn man ein wenig vorausschauend konzipiert, kann man normalerweise leicht feststellen, welche Hilfsmethoden von einem Client benötigt werden. Die Notwendigkeit dieser Methoden wird noch deutlicher werden, wenn Toms Anwendung mit Johns Web Services verbunden wird.

Themenseiten: Big Data, Datenbank, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Web Services: Implementierung der Business-Logik

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *