Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SOAP, nur ein neuer XML- Dialekt?

Ähnliche Präsentationen


Präsentation zum Thema: "SOAP, nur ein neuer XML- Dialekt?"—  Präsentation transkript:

1 SOAP, nur ein neuer XML- Dialekt?
Dr. Eduard Heindl, Lehrbeauftragter an der FH-Geislingen 10. Dezember 2002 Dr. Eduard Heindl

2 Inhalt Schnittstellen zwischen Software
SOAP Simple Object Access Protocol Beispieldateien Hintergrund Weitere Komponenten WDSL, UDDI Vor- und Nachteile Trend? 10. Dezember 2002 Dr. Eduard Heindl

3 SOAP IT-Kommunikation COM DCOM INTERNET RMI CORBA WIN32 Anwendung
UNIX RMI WIN32 Anwendung COM Anwendung DCOM SOAP 10. Dezember 2002 Dr. Eduard Heindl

4 Probleme bisheriger Lösungen
Herstellerabhängig (RMI, COM, DCOM) Geringe Verbreitung (Corba) Binäre Formate Nicht XML-konform Port der Anwendung oft geschlossen, keine feste Portnummer 10. Dezember 2002 Dr. Eduard Heindl

5 SOAP Simple Object Access Protocol
Was ist SOAP? SOAP = XML + HTTP + Anwendungen Kommunikationslösung W3C Standard Minimalistische Lösung Teil des Web Service Konzepts Nicht objektorientiert 10. Dezember 2002 Dr. Eduard Heindl

6 Eigenschaften von SOAP
Programmiersprachen-Unabhängigkeit Lesbarer Text (human readable) Datentypen (jenseits des Strings) 10. Dezember 2002 Dr. Eduard Heindl

7 Aufbau SOAP Message Format XML Definition durch XML-Schema
SOAP Envelope SOAP Header SOAP Body 10. Dezember 2002 Dr. Eduard Heindl

8 SOAP Aufbau Transport-Umschlag (HTTP, SMTP, ...)
SOAP- Dokument <SE:Envelope> <SE:Header>(optional) Delivery Information <SE:Body>(required) Nutzdaten (payload) <SE:Fault> (optional) 10. Dezember 2002 Dr. Eduard Heindl

9 Eine kleine Anfrage müssen übereinstimmen
POST /Sample HTTP/1.1 Host: Content-Type: text/xml; charset="utf-8„ Content-Length: 234 SOAPAction: "GetLastTradePrice" <SE:Envelope xmlns:SE= SE:encodingStyle=" <SE:Body> <m:GetLastTradePrice xmlns:m="Some-URI"> <symbol>DEF</symbol> </m:GetLastTradePrice> </SE:Body> </SE:Envelope> müssen übereinstimmen 10. Dezember 2002 Dr. Eduard Heindl

10 Und die Antwort HTTP/ OK Content-Type: text/xml; charset="utf-8„ Content-Length: 178 <SOAP-ENV:Envelope xmlns:SOAP-ENV= SOAP-ENV:encodingStyle=" <SOAP-ENV:Body> <m:GetLastTradePriceResponse xmlns:m="Some-URI"> <Price>34.5</Price> </m:GetLastTradePriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 10. Dezember 2002 Dr. Eduard Heindl

11 Schema für SOAP Der SOAP XML-Dateiaufbau wird durch ein Schema beschrieben Aktuelle Version 1.2 Original: 10. Dezember 2002 Dr. Eduard Heindl

12 Hintergrund: XML-Schema
Schema beschreibt die Struktur eines XML-Dokuments Schema löst die bisherige Form DTD ab Schema wird in XML-Syntax geschrieben Schema kennt Datentypen Datenstrukturen 10. Dezember 2002 Dr. Eduard Heindl

13 Hintergrund: Namespace
Problem: Weltweiter Funktionsaufruf führt zu Namenskollisionen für Bezeichner: SOAP (Seife), SOAP (Seifenoper), SOAP (Web), ... Ziel: Namen von Bezeichnern weltweit eindeutig Lösung: Dem Bezeichner wird eine URI vorangestellt, deren Abkürzung im Dokument vereinbart wird xmlns:rein=´ Einsatz im Dokument ... rein:soap ... 10. Dezember 2002 Dr. Eduard Heindl

14 Sicherheitsaspekte SOAP kann sichere Transportprotokolle nutzen
Secure HTTP (HTTPS) Secure MIME (S/MIME) Security im <header> vereinbaren Nutzung von LDAP, X.509 für Authentifikation 10. Dezember 2002 Dr. Eduard Heindl

15 Web Services Schnittstelle des Service beschreiben
Service zentral hinterlegen Service suchen Service in die Software implementieren Service zur Laufzeit aufrufen 10. Dezember 2002 Dr. Eduard Heindl

16 SOAP WSDL SOAP UDDI SOAP Ablauf einer Anfrage Discovery Agency WSDL
2. suchen 1. publizieren stub stub SOAP WSDL SOAP UDDI stub stub 3. Nutzen Service Requestor Web Service Provider Anwendung Anwendung SOAP stub stub 10. Dezember 2002 Dr. Eduard Heindl

17 Universal Description Discovery and Integration - UDDI
Globaler Verzeichnisdienst Eintragen der eigenen Web Services Suchen nach Web Services Dynamische Anfrage vor Serviceaufruf Öffentliche UDDI-Server bei HP, IBM, Microsoft, SAP 10. Dezember 2002 Dr. Eduard Heindl

18 Inhalt von UDDI White Pages Yellow Pages • Green Pages
Firmenname und Adresse Kontaktinformationen, WebSite Yellow Pages Business Type, Ort (Adresse), Produkte Industriezweig • Green Pages Technische Informationen zum Business Pointer zur WSDL Beschreibung (Text) 10. Dezember 2002 Dr. Eduard Heindl

19 Web Service Description Language - WSDL
Beschreibungssprache für Web Services Vergleichbar mit IDL (Interface Description Language) bei Corba Spezifiziert einen Web Service C# oder Java Kommunikationsteil kann daraus abgeleitet werden, z.B mit WSDL2JAVA in Apache Axis 10. Dezember 2002 Dr. Eduard Heindl

20 WDSL Inhalte Service Interface Datei Server Implementations Datentypen
Message Typen Operationen Port-Typen Bindings Server Implementations Datei Port Service 10. Dezember 2002 Dr. Eduard Heindl

21 WSDL - Beispiel <?xml version="1.0" encoding="utf-8"?> <definitions ….. > <types> <s:schema elementFormDefault="qualified" targetNamespace…./"> <s:element name="Echo"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="echoString" type="s:string"> </s:sequence> </s:complexType> </s:element> <s:element name="EchoResponse"> <s:element name="string" nillable="true" type="s:string" /> 10. Dezember 2002 Dr. Eduard Heindl

22 Web Service Flow Language (WSFL)
Ablaufbeschreibung für Web Services Verknüpfung mehrerer Services Model von IBM (vergleichbar XLANG von Microsoft) inzwischen als Vorschlag bei W3C eingereicht 10. Dezember 2002 Dr. Eduard Heindl

23 Implementierungen Java API for XML Messaging – JAXM
Unterstützt SOAP und ebXML Java API for XML Processing – JAXP Arbeitet mit DOM, SAX, XSLT Java API for XML Registries - JAXR Zugriff auf UDDI Java API for XML-based RPC – JAX-RPC Export von WSDL möglich 10. Dezember 2002 Dr. Eduard Heindl

24 Vorteile von SOAP Unterstützt durch größte Softwarehersteller
Einfachere Kombination verschiedener Dienste Kosten für die Integrations-Middleware sinkt Erste Anwendungen bereits online verfügbar Programmiersprachen-Unabhängigkeit Lesbarer Text (human readable) Datentypen (jenseits des Strings) 10. Dezember 2002 Dr. Eduard Heindl

25 Probleme bei Web Services
HTTP bei vielen Firewalls offen Zuverlässigkeit der Services Vielzahl von Serviceschnittstellen Performance bei der Prozessverteilung Haftung für Leistungen 10. Dezember 2002 Dr. Eduard Heindl

26 SOAP – nur ein neuer XML Dialekt?
SOAP ist mehr SOAP ist Web Services SOAP ist das für Software, was HTML für den Internetnutzer ist SOAP könnte das „Betriebssystem“ des Internets werden 10. Dezember 2002 Dr. Eduard Heindl

27 Zum Weiterlesen Web Service Architecture Attack of the Web Services, Andreas Holubek, Javamagazin 5/2002 Komposition von Web-Services mit WSFL, Thilo Frotscher, JAVASPEKTRUM 1/2002 Fit for Web Services, SOAP in der Praxis, Chi-Quang Lam, Javamagazin 2/2002 Web Services: Eine Middleware für das Internet? Andreas Kapp, Roy T. Fielding, netzwoche 15/2002 10. Dezember 2002 Dr. Eduard Heindl

28 Zukunft? 10. Dezember 2002 Dr. Eduard Heindl


Herunterladen ppt "SOAP, nur ein neuer XML- Dialekt?"

Ähnliche Präsentationen


Google-Anzeigen