Address Book - Technische Informationen


Eine Beschreibung von Web-Services finden Sie in der Dokumentation zu IBM WebSphere Web Services im InfoCenter.

Das Beispiel "AddressBook" veranschaulicht zwei Arten des Zugriffs auf den Web-Service. Das Beispiel enthält zwei Clients und vier Varianten derselben AddressBook-Bean. Die beiden Clients sind ein J2SE-Client (Java 2 Standard Edition) und ein J2EE-Client (Java 2 Enterprise Edition). Jeder Client verwendet die vier Varianten der Bean "AddressBook", die im Server implementiert sind.

Quellcode

Sie finden den Quellcode für das Beispiel "AddressBook" in den Unterverzeichnissen von Profilstammverzeichnis/samples/src/WebServicesSamples. Der Quellcode für jede der vier Beans der AddressBook-Anwendung befindet sich in einem Unterverzeichnis, dessen Namen Sie der folgenden Tabelle entnehmen können. Der Quellcode des einfachen J2SE-Clients ist im Verzeichnis Clients/simpleClients/samples/address gespeichert. Der Quellcode des J2EE Application Client ist im Verzeichnis Clients/applicationClients/AddressBookClient gespeichert.

Anmerkung für z/OS-Benutzer: Die Quellcodestruktur für die Beispiele wird unter z/OS nicht bereitgestellt, weil auf der z/OS-Plattform keine Beispielanwendungen erstellt werden.

Die vier Varianten der Anwendungs-Beans zeigen die verschiedenen Ansätze für die Entwicklung einer für Web-Services aktivierten Anwendung. Es sind zwei EJBs (Enterprise JavaBeans) verfügbar, die jeweils in einen anderen Entwicklungsansatz integriert sind. Jeder Ansatz veranschaulicht das Erstellen einer Web-Services-Bean mit einer WSDL-Datei (Web Service Definition Language). Für die Generierung des Java-Codes und der Bindungen wird das Tool "WSDL2Java" verwendet.

Die Artefakte dieser EJB enthalten "W2JE", um sie von den anderen Versionen unterscheiden zu können. Eine zweite Enterprise-Bean wird durch Starten einer implementierten EJB und die Verwendung des Tools Java2WSDL erstellt, das die zugehörige WSDL-Datei generiert. Die WSDL-Datei wird verwendet, um die Implementierungsdeskriptoren zu generieren. Die Artefakte dieser Enterprise-Bean sind mit "J2WE" gekennzeichnet.

Die Artefakte der beiden JavaBeans enthalten die Zeichenfolge "J2WB" bzw. "W2JB", um den jeweiligen Entwicklungsansatz zu kennzeichnen.

Die folgende Tabelle enthält die Namen der vier AddressBook-Beans.

 
Port Verzeichnis Implementierungsklasse Veranschaulicht
AddressBookW2JE addrEJBTopDown AddressBookSoapBindingImpl.java Eine Web-Services-Enterprise-Bean, die auf der Basis einer WSDL-Datei erstellt wurde. Für die Generierung des Java-Codes für die Enterprise-Bean wurde das Tool "WSDL2Java" verwendet.
AddressBookJ2WE addrEJBBottomUp AddressBookBeanImpl.java Eine Web-Services-Enterprise-Bean, die auf der Basis einer Bean erstellt wurde. Für die Generierung einer WSDL-Datei, aus der die Implementierungsdeskriptoren erstellt werden, wurde das Tool Java2WSDL verwendet.
AddressBookJ2WB addrBeanBottomUp AddressBookBean.java Eine Web-Services-JavaBean, die auf der Basis einer Bean erstellt wurde. Für die Generierung einer WSDL-Datei, aus der die Implementierungsdeskriptoren erstellt werden, wurde das Tool Java2WSDL verwendet.
AddressBookW2JB addrBeanTopDown AddressBookBean.java Eine Web-Services-JavaBean, die auf der Basis einer WSDL-Datei erstellt wurde. Für die Generierung des Java-Codes für die JavaBean wurde das Tool "WSDL2Java" verwendet.

Sie finden die in der Tabelle angegebenen Verzeichnisse im Verzeichnis Profilstammverzeichnis/samples/src/WebServicesSamples.

Jede Implementierung des Service "AddressBook" unterstützt die Operation getAddressFromName. Die Operation gibt eine statische Antwort an den Client zurück. Es ist kein Datenbankspeicher mit Adressen verfügbar. Dieses Beispiel soll die Beziehung zwischen einer Bean und einem Webservice veranschaulichen.

Alle Versionen des Service "AddressBook" sind in der Datei WebServicesSamples.ear enthalten. Aufgrund der eindeutigen Stammkontexte und JAR-Namen können die Versionen gleichzeitig aktiviert werden. Außerdem haben die EJB-Implementierungsklassen eindeutige Namen und unterscheiden sich von den JavaBean-Implementierungsklassen. Diese Eindeutigkeit stellt sicher, dass der Klassenlader im Server die richtige Implementierungsklasse findet.

Beziehungen der AddressBook-Beans überprüfen

Das Beispiel umfasst zwei Clients, einen J2SE-Client und einen J2EE-Client. Jeder Client verwendet die vier Varianten der Bean "AddressBook", die im Server implementiert sind.

Die Beziehung zwischen den vier Bean, die im Server implementiert sind, ist in der WSDL-Datei des Clients dargestellt, die für den Clientzugriff auf die vier Beans erstellt wird. Die WSDL-Datei definiert einen Service, den AddressBookService, mit vier Ports. Der Client AddressBook.wsdl ist im Beispielverzeichnis src/WebServicesSamples/Clients/applicationClients/META-INF gespeichert.