lehrerbibliothek.deDatenschutzerklärung
Web Services Grundlagen und praktische Umsetzung mit J2EE und .NET Website mit Beispieldateien, Lösungen der Aufgaben, Links und zusätzlichen Infos zu Web Services
Web Services
Grundlagen und praktische Umsetzung mit J2EE und .NET


Website mit Beispieldateien, Lösungen der Aufgaben, Links und zusätzlichen Infos zu Web Services

Andreas Eberhart, Stefan Fischer

Carl Hanser Verlag
EAN: 9783446225305 (ISBN: 3-446-22530-7)
386 Seiten, paperback, 17 x 24cm, Oktober, 2003

EUR 34,90
alle Angaben ohne Gewähr

Umschlagtext
Dieses Buch zeigt, wie Web Services entworfen und eingesetzt werden, sowohl für Java- als auch für .NET-basierte Lösungen.

Die Autoren erläutern im ersten Teil die Vorteile dieser Technik gegenüber den bisher in verteilten Systemen verbreiteten (COM, CORBA, RMI) und führen in die Standards ein, die den Web Services zugrunde liegen: XML, WSDL, SOAP und UDDI.



Auf dieser Basis erklären sie, wie Web Services implementiert und welche Werkzeuge dafür eingesetzt werden. Wie Web Services in die bestehende Infrastruktur eingebettet und wie die Sicherheitsanforderungen umgesetzt werden, zeigen eigene Kapitel. Abschließend werden die besonderen Bedingungen für die Entwicklung von Web Services für B2B-Szenarien vorgestellt.



An einer Beispielanwendung zeigen die Autoren exemplarisch, wie die vorgestellten Techniken in der Praxis eingesetzt werden. Mit Hilfe der Übungsaufgaben können die Leser den Lernerfolg kontrollieren.



Im Internet:

Beispieldateien, Lösungen zu den Übungsaufgaben und Links zur verwendeten Software sowie aktuelle Infos rund um Web Services






Verlagsinfo
Schritt für Schritt: Web Services entwerfen und einsetzen

Dieses Buch zeigt, wie Web Services entworfen und eingesetzt werden, sowohl für Java- als auch für .NET-basierte Lösungen.
Die Autoren erläutern die Vorteile dieser Technik gegenüber den bisher in verteilten Systemen verbreiteten, wie COM, CORBA, RMI. Darauf aufbauend
erhalten die Leser eine solide Einführung in die Standards, die den Web Services zugrunde liegen: XML, WSDL (Website Description Language), SOAP
(das Übertragungsprotokoll) und UDDI (für die Lokalisierung und Registrierung von weltweit verfügbaren Diensten).
Auf dieser Basis zeigen die Autoren, wie Web-Services implementiert und welche Werkzeuge dafür eingesetzt werden. Alle Werkzeuge, die aus der
Java- und Open-Source-Welt kommen, sind auf der Website zum Buch erhältlich. Ein eigenes Kapitel geht auf die besonderen Bedingungen für die
Entwicklung von Web Services für B2B-Szenarien ein. Mit Hilfe einer Beispielanwendung, die schrittweise ausgebaut wird, und
Übungsaufgaben gelingt dem Leser schnell die Umsetzung in die Praxis.

Im Internet unter http://www.ibr.cs.tu_bs.de/ws-buch/:
Alle Beispiele und Open- Source-Tools, aktuelle Infos rund um Web-Services
Inhaltsverzeichnis
1 Einführung

1.1 Motivation
1.2 Aufbau des Buches
1.3 Die Web-Seite zum Buch

Teil I: Grundlagen

2 Verteilte Anwendungen

2.1 Grundlagen verteilter Systeme und Anwendungen
2.1.1 Geschichte
2.1.2 Warum überhaupt verteilte Systeme?
2.1.3 Definition und wichtige wünschenswerte Eigenschaften
2.1.4 Grundlagen von Netzwerken
2.1.5 Implementierung
2.2 Architektur moderner Web-Anwendungen
2.2.1 Das World-Wide Web
2.2.2 Web-Infrastruktur
2.2.3 Dynamische Web-Seiten-Erzeugung
2.2.4 N-Tier-Architectures
2.3 Die Java 2 Enterprise Edition (J2EE)
2.3.1 Konzeption der Java-Welt – von J2ME, J2SE und J2EE
2.3.2 Java-Umgebungen laden und installieren
2.3.3 Ein kurzer Überblick über die Sprache Java und Standardwerkzeuge
2.3.4 Die J2EE-Klassenbibliothek
2.3.5 Die J2EE-Werkzeuge
2.3.6 Web-Anwendungen mit J2EE
2.4 Microsoft .Net
2.4.1 Warum und wie Microsoft zur Internet-Company wurde
2.4.2 .Net-Übersicht und Architektur
2.4.3 Common Language Runtime (CLR)
2.4.4 Die Klassenbibliothek
2.4.5 Visual Studio .Net
2.4.6 Die neue Sprache C# – Unterschiede zu Java
2.4.7 Web-Anwendungen mit .Net
2.5 Die Beispielanwendung des Buchs
2.6 Übungsaufgaben

3 Web Services – Middleware basierend auf offenen Standards

3.1 Die Entwicklung des Web Service Ansatzes
3.2 Standardisierung: W3C & Co
3.3 Interaktionsmodell und Schichtenarchitektur
3.4 Web Services in den Plattformen
3.4.1 Web Services-Konzept in J2EE
3.4.2 Web Services-Konzept in .Net
3.5 Die Konkurrenz: CORBA, RMI und Sun RPC
3.5.1 CORBA
3.5.2 Java RMI
3.5.3 Sun RPC
3.6 Vor- und Nachteile von Web Services
3.7 Übungsaufgaben

4 Die Transportschicht

4.1 Das Internet und TCP/IP
4.2 HTTP
4.2.1 Uniform Resource Identifiers (URI)
4.2.2 Protokollarchitektur von HTTP
4.2.3 Die HTTP-Methoden und das HTTP-Request-Paket
4.2.4 Das HTTP-Response-Paket und die Status-Codes
4.2.5 Der Protokollablauf von HTTP
4.2.6 Erhalten von Kontextinformation in HTTP
4.3 HTTPS
4.3.1 Asymmetrische Schlüsselverfahren
4.3.2 Secure Socket Layer (SSL)
4.3.3 Architektur von HTTPS
4.3.4 Verwendung
4.4 SMTP & Co
4.4.1 Warum andere Transportsysteme als HTTP?
4.4.2 Architektur des Internet-Email-Systems
4.4.3 Das Email-Format
4.4.4 Email-Protokolle und deren Zusammenspiel
4.5 JMS Message Queues
4.5.1 Klassische Anwendungsbereiche von Message Queues
4.5.2 Garantierte Auslieferung von Nachrichten
4.5.3 Java Message Service (JMS)
4.6 Übungsaufgaben

5 Werkzeugunterstützung für den Transport

5.1 TCP Monitor
5.2 Tomcat Web Server
5.2.1 Installation
5.2.2 Basic Authentication
5.2.3 SSL-Konfiguration
5.3 Java Mail API
5.3.1 SMTP-Client
5.3.2 POP3-Client
5.4 OpenJMS Service
5.4.1 JMS-Sender
5.4.2 JMS-Empfänger
5.5 Übungsaufgaben

6 Extensible Markup Language XML

6.1 Die Geschichte von XML
6.2 Designziele
6.3 Die Struktur von XML-Dokumenten
6.4 Namespaces
6.5 XML Schema
6.5.1 Simple Types
6.5.2 Complex Types
6.5.3 XML Schema und Namespaces
6.5.4 Import von Datentypen
6.5.5 Document Type Definition (DTD)
6.5.6 Wieso nicht DTDs?
6.6 Validierung
6.7 XPath
6.8 eXtensible Stylesheet Language for Transformations (XSLT)
6.9 Übungsaufgaben

7 Werkzeugunterstützung für XML

7.1 Parser und Validierer
7.1.1 Simple API for XML (SAX)
7.1.2 Document Object Model (DOM)
7.1.3 Validierung
7.1.4 XSLT-Transformation
7.2 XML, objektorientierte Datenstrukturen und Datenbanken
7.2.1 Java Beans
7.2.2 Vergleich von XML, Datenbanktupeln und Objekten auf der Instanzebene
7.2.3 XML, Datenbanken und Programmiersprachen auf der Schemaebene
7.2.4 Komplexe Strukturen
7.3 Automatische Transformation der Schema-Repräsentation
7.3.1 Java Architecture for XML Binding (JAXB)
7.3.2 java2wsdl
7.3.3 XML-Unterstützung in Datenbanken
7.3.4 Das Toolkit Castor
7.4 Grafische Editoren
7.5 Übungsaufgaben

Teil II: Dienstaufrufe mit SOAP und WSDL

8 SOAP – Simple Object Access Protocol

8.1 Aufgaben und Standardisierung von SOAP
8.2 Das SOAP-Nachrichtenformat
8.3 Typische Kombinationen von Nachrichten
8.3.1 Das dialogorientierte MEP
8.3.2 Das RPC-MEP
8.4 Das Verarbeitungsmodell von SOAP
8.4.1 Das Attribut role
8.4.2 Das Attribut mustUnderstand
8.4.3 Das Attribut relay
8.5 Protokollbindungen
8.5.1 Die SOAP-HTTP-Bindung
8.5.2 SOAP über Email
8.6 SOAP Encodings
8.7 Übungsaufgaben

9 WSDL – Web Service Description Language

9.1 Grundlagen von Schnittstellenbeschreibungen
9.2 WSDL-Standardisierung
9.3 Aufbau einer WSDL-Dienstbeschreibung
9.3.1 Inhalt einer WSDL-Beschreibung
9.3.2 Grundstruktur der WSDL-Datei
9.3.3 Spezifikation von Datentypen
9.3.4 Nachrichtenformate
9.3.5 Interfaces
9.3.6 Beschreibung von Bindungen
9.3.7 Beschreibung des Dienstes
9.4 Ein Beispiel zur Verdeutlichung
9.5 Migration von WSDL 1.1 zu WSDL 1.2
9.6 Muss ich SOAP und WSDL jemals selbst anfassen?
9.7 Übungsaufgaben

10 Werkzeugunterstützung für SOAP und WSDL

10.1 W3C, .Net und JAX-RPC
10.2 Apache Axis
10.2.1 Installation
10.2.2 Die Architektur von Axis
10.2.3 Die ersten Schritte
10.2.4 wsdl2java
10.2.5 Struktur der generierten Klassen
10.2.6 Der Axis-Client
10.2.7 Mehrere Service-Instanzen, eine WSDL-Beschreibung?
10.2.8 Axis-Clients und .Net
10.2.9 Service-Deployment
10.2.10 Deployment-Deskriptoren
10.2.11 Java2WSDL
10.3 Microsoft .Net
10.3.1 Web Services mit C#
10.3.2 Konfigurationsparameter im Internet Information Server
10.3.3 Web Service Clients mit C#
10.3.4 Web Services in Office XP
10.4 Interoperabilität
10.5 Übungsaufgaben

11 Die Beispielanwendung mit Web Services

11.1 Vorstellung des Szenarios
11.2 Schnittstellenbeschreibung
11.3 Deployment von Testdiensten
11.3.1 Generieren der B2B-WSDL-Beschreibung
11.3.2 Service Deployment
11.3.3 Service Test
11.4 Übungsaufgabe

12 Einbettung in die bestehende Infrastruktur

12.1 Trennung von Präsentation und Anwendungslogik
12.2 Enterprise Java Beans
12.2.1 Was ist eigentlich ein Applikations-Server?
12.2.2 Merkmale von EJBs
12.3 Vor- und Nachteile eines Applikations-Servers
12.4 Das Authentifikationsproblem
12.4.1 Explizite Kontextpropagierung
12.4.2 Implizite Kontextpropagierung
12.4.3 Gemeinsame Benutzerverwaltung
12.4.4 Szenario: Web-basierte Schnittstelle für eine Anwaltskanzlei
12.4.5 Szenario: Webmail
12.4.6 Wo findet die Benutzerprüfung statt?
12.5 Übungsaufgaben

13 Sicherheit von Web Services

13.1 Sicherheitsanforderungen
13.1.1 Vertraulichkeit
13.1.2 Authentizität
13.1.3 Integrität
13.1.4 Nicht-Anfechtbarkeit
13.1.5 Verfügbarkeit und Zugangskontrolle
13.2 Sicherheitsmechanismen
13.2.1 Kryptographische Algorithmen
13.2.2 Vertraulichkeit durch Verschlüsselung
13.2.3 Digitale Signaturen
13.2.4 Digitale Zertifikate
13.2.5 Firewalls
13.3 Genügt denn HTTPS nicht?
13.4 XML Encryption
13.5 XML Signature
13.6 XML Key Management Specification (XKMS)
13.7 Security Assertions Markup Language (SAML)
13.8 Extended Access Control Markup Language (XACML)
13.9 Ein übergreifender Ansatz: WS-Security
13.10 Werkzeuge und Bibliotheken
13.11 SOAP-Proxies
13.12 Übungsaufgaben

14 Die Beispielanwendung mit Einbindung von EJBs

14.1 JBoss Applikations-Server
14.1.1 Installation und Hello World!
14.1.2 Was ist hier nun passert?
14.1.3 Woher kommt die Deployment-Information?
14.2 Aufruf der EJB-Komponenten vom Web-Service-Container
14.2.1 Voraussetzungen
14.2.2 JBoss.Net
14.3 Implementierung
14.3.1 SSL und Basic Authentication im .Net-Client
14.3.2 SSL und Basic Authentication im Axis-Server
14.3.3 Sessions: Web Services - EJB Schnittstelle
14.3.4 Realisierung von Sessions
14.3.5 EJB-Clients in JSPs und Web Services
14.3.6 Authentifikation in der Java Middleware: JAAS
14.4 Übungsaufgaben

Teil III: Business-to-Business-Szenarien

15 UDDI – Universal Description, Discovery and Integration

15.1 Grundlagen von Verzeichnisdiensten
15.2 Architektur und Datenstrukturen von UDDI
15.2.1 UDDI-Registries
15.2.2 Zugriff auf Registries
15.2.3 Kategorien von UDDI-Einträgen
15.2.4 Zentrale Datenstrukturen und Dienste
15.3 Suche
15.4 Registrierung
15.5 Nutzung von UDDI zur Design- und Laufzeit

16 Werkzeuge für die UDDI-Nutzung

16.1 UDDI-Server
16.1.1 Systinet WASP UDDI-Registry
16.1.2 Windows 2003 Server UDDI Registry
16.2 UDDI-Client
16.2.1 Microsoft UDDI SDK
16.2.2 UDDI4J
16.3 Übungsaufgaben

17 Die Beispielanwendung mit UDDI

17.1 Architektur
17.1.1 Die Client-Seite der Reiseportale
17.1.2 Die Server-Seite der Fluggesellschaften
17.2 Implementierung eines dynamischen Systems mit UDDI
17.3 Übungsaufgaben

18 B2B-Standards mit XML und Web Services

18.1 B2B-Anwendungen
18.2 Nutzen und Probleme von Standards
18.3 UDDI und ebXML
18.4 B2B-Vokabulare
18.4.1 cXML
18.4.2 RosettaNet
18.4.3 xCBL und UBL
18.5 Workflow Frameworks
18.5.1 BPML
18.5.2 BPEL4WS
18.5.3 WSCI
18.6 Übungsaufgaben

Teil IV: Ausblick und Zusammenfassung

19 Ausblick

19.1 Heutige und zukünftige Bedeutung von Web Services
19.1.1 Web Services heute
19.1.2 Geschäftsmodelle
19.1.3 Einsatzgebiete für Web Services in den nächsten Jahren
19.2 Ontologien und das Semantic Web
19.2.1 Schichtenarchitektur des Semantic Webs
19.2.2 RDF/RDF Schema
19.2.3 Web Ontology Language
19.2.4 RuleML
19.2.5 Semantic Web Services
19.3 Grid Computing
19.3.1 Idee des Grid Computing
19.3.2 Architektur eines Grid
19.3.3 Das Globus Toolkit
19.4 Übungsaufgaben

20 Zusammenfassung

Anhang:Literaturverzeichnis und wichtige Web-Seiten

Index