Web Services mit Apache CXF. Axel Eberhard Leistner
Чтение книги онлайн.

Читать онлайн книгу Web Services mit Apache CXF - Axel Eberhard Leistner страница 4

Название: Web Services mit Apache CXF

Автор: Axel Eberhard Leistner

Издательство: Bookwire

Жанр: Математика

Серия:

isbn: 9783844252507

isbn:

СКАЧАТЬ href="#fb3_img_img_384311d8-c59a-5eaf-8687-57d69ef0d4bf.jpg" alt=""/>

      Abbildung 32: Das fertige GuestBook.xsd Schema

      Das Schema GuestBook.xsd hat damit folgendes Aussehen:

      WSDL: Gästebuch-Service-Schnittstelle erstellen

      Im XML-Ordner erstellen wir eine neue WSDL. Wählen Sie im Menü des XML-Ordners die Kombination New -> Other... -> Web Services -> WSDL File. Klicken Sie auf den Schalter Next (Abbildung 33). Geben Sie der WSDL-Datei den Namen GuestBook.wsdl (Abbildung 34).

      Abbildung 33: WSDL-Datei anlegen

      Klicken Sie auf Next (Abbildung 34).

      Ändern Sie den Target Namespace zu

      Alle anderen Einstellungen bleiben unverändert. Klicken Sie auf Finish.

      Abbildung 34: Name der WSDL-Datei festlegen

      Abbildung 35: Target Namespace angeben

      Führen Sie auf den Port einen Rechtsklick aus und danach wählen Sie Show properties. Dadurch öffnen Sie die Properties-View (Abbildung 36). Die Port-Adresse des Service ändern Sie auf

      (Abbildung 37). Unter dieser URL kann der Service später angesprochen werden.

      Abbildung 36: Eigenschaften-Sicht öffnen

      Abbildung 37: Port-Adresse ändern

      Die Operationen getEntries und insertEntry stellen Sie mit einem Rechtsklick auf den portType GuestBook (Abbildung 38) und durch Verwendung von Add Operation bzw. durch Umbenennen der vorhandenen Operation dar.

      Abbildung 38: Service-Operationen definieren

      Entfernen Sie zur Operation insertEntry die Output-Nachricht. Dazu klicken Sie zunächst auf den Pfeil rechts zum dem Eintrag output (Abbildung 39).

      Abbildung 39: Eintrag output von insertEntry auswählen durch Klick auf Pfeil

      Löschen Sie insertEntryResponseType und insertEntryResponse durch Klick auf den Schalter Delete (Abbildung 40 und Abbildung 41).

      Abbildung 40: Eintrag insertEntryResponseType löschen

      Abbildung 41: Eintrag insertEntryResponse löschen

      Speichern Sie jetzt die Änderungen. Schließen Sie danach den Inline Schema Editor. Löschen Sie nun den Eintrag output im GuestBook-Schema durch Klick auf den Schalter Delete (Abbildung 42).

      Abbildung 42: Eintrag output löschen

      Nun öffnen wir über die Output-Nachricht der Operation getEntries des getEntriesResponse-Elements den Inline Schema Editor. Klicken Sie dazu auf den Pfeil rechts zur Operation (Abbildung 43).

      Abbildung 43: Wechsel zum Inline Schema Editor

      Suchen Sie in der Design-Übersicht den GuestBookType-Schema-Typ aus unserer XSD, indem Sie auf die Kombination Set Type -> Browse... klicken (Abbildung 44). Klicken Sie auf den Schalter Enclosing Project, damit im gesamten Projekt nach den passenden Schema-Definitionen gesucht wird (Abbildung 45). Damit wird sofort unser Gästebuch-Typ aus unserer XSD-Datei gefunden. Aktivieren Sie diesen Typ mit Klick auf den Schalter OK. Nun speichern wir unsere Änderungen und schließen den Inline-Editor.

      Abbildung 44: GuestBook-Schema-Typ suchen

      Abbildung 45: Gästebuch-Typ aus der XSD auswählen

      Damit haben wir den Typ des getEntriesResponse auf den Wert GuestBookType aus unserer XSD gesetzt.

      Abbildung 46: Geänderter GuestBookType

      Wechseln Sie wieder zum Inline Schema Editor. Nun bearbeiten Sie das Element insertEntry der Input-Nachricht zur Operation insertEntry. Aktivieren Sie den GuestBookEntryType (Abbildung 47).

      Abbildung 47: Gästebucheintrag-Typ aus der XSD auswählen

      Speichern Sie jetzt wieder die Änderungen und schließen Sie danach den Inline Schema Editor.

      Abbildung 48: Zurück aus dem Editor

      Wechseln Sie zum Inline Schema Editor des Elements getEntries und löschen Sie den getEntriesType (Abbildung 49).

      Abbildung 49: getEntriesType löschen

      Im Source-Fenster löschen Sie den wsdl-message Eintrag „insertEntryResponse“ (Abbildung 50).

      Abbildung 50: wsdl-message "insertEntryResponse" löschen

      Aktualisieren Sie das Binding mit Rechtsklick СКАЧАТЬ