Analyse SOAP vs. REST

Größe: px
Ab Seite anzeigen:

Download "Analyse SOAP vs. REST"

Transkript

1 Dokumentation Analyse SOAP vs. REST Version 1.0, Bernd Zwattendorfer Zusammenfassung: Im Internet werden Web Services für den Nachrichten- Austausch und die Kommunikation zwischen Systemen eingesetzt. Die zwei wesentlichen Standards dafür sind SOAP und REST. In diesem Dokument werden sowohl SOAP als auch REST ausführlicher erläutert. Anschließend werden beide Ansätze miteinander verglichen und deren Unterschiede bzw. deren Vor- und Nachteile dargestellt. E-Government Innovationszentrum Inffeldgasse 16/a, A-8010 Graz Tel Fax Das E-Government Innovationszentrum ist eine gemeinsame Einrichtung des Bundeskanzleramtes und der TU-Graz

2 Inhaltsverzeichnis 1 Einleitung SOAP Struktur von SOAP-Nachrichten Austausch von SOAP-Nachrichten Beispiel Vor- und Nachteile Vorteile Nachteile REST Struktur von REST-Nachrichten Austausch von REST-Nachrichten Beispiel Vor- und Nachteile Vorteile Nachteile SOAP vs. REST Implementierung Austauschformat Transportprotokoll Schnittstellenbeschreibung Frameworks Unabhängigkeit von der Umgebung Performance Sicherheit Zustandsbehaftung Transaktionen Anwendungsgebiet Fehlerbehandlung Spezifizierte Erweiterungen Zusammenfassung und Fazit Einleitung 2

3 Abbildungsverzeichnis Abbildung 1 - Web Service Kommunikation... 4 Abbildung 2 - Aufbau einer SOAP-Nachricht... 5 Abbildung 3 - Funktionsweise von SOAP Abbildung 4 - Funktionsweise von REST Tabellenverzeichnis Tabelle 1 Beispiel einer SOAP-Request-Nachricht [Hüff10]... 7 Tabelle 2 - Beispiel einer SOAP-Response-Nachricht [Hüff10]... 7 Tabelle 3 Beispiel einer REST-Request-Nachricht [Hüff10] Tabelle 4 - Beispiel einer REST-Response-Nachricht [Hüff10] Tabelle 5 - Zusammenfassung SOAP vs. REST Einleitung 3

4 1 Einleitung SOAP [SOAP 1.2] und REST [Fiel00] definieren im Wesentlichen zwei Standards für Web Services. Während das Web zu Beginn hauptsächlich für den Informationstransfer zwischen einer Benutzerin bzw. einem Benutzer und einem oder mehreren Servern verwendet wurde, wird seit etlichen Jahren das Web auch für den Austausch von Informationen zwischen Servern bzw. Systemen genutzt. Diese Kommunikation zwischen den Systemen bzw. die zugrundeliegende Web-Schnittstelle wird dabei als Web Service bezeichnet. Das W3C als treibende Kraft hinter der Spezifizierung von Web Standards definiert Web Services folgendermaßen: The World Wide Web is more and more used for application to application communication. The programmatic interfaces made available are referred to as Web services. [WS_Act] Web services provide a standard means of interoperating between different software applications, running on a variety of platforms and/or frameworks. [WS_Arch] Eine Web Service-Kommunikation besteht im Wesentlichen aus dem Nachrichtentransfer zwischen zwei Endpunkten, einem Web Service-Client und einem Web Service-Server. Dabei sendet der Client einen Web Service-Request an den Server, dieser bearbeitet die Anfrage und sendet eine Web Service-Response zurück an den Client. Abbildung 1 veranschaulicht dieses Szenario. Web Service-Request Web Service-Response Bearbeitung Web Service Client Web Service Server Abbildung 1 - Web Service Kommunikation Für die Kommunikation zwischen Web Service-Client und Web Service-Server können unterschiedliche Möglichkeiten herangezogen werden. Zwei dieser Möglichkeiten sind SOAP und REST. Im Rahmen dieses Dokuments werden SOAP bzw. REST kurz beschrieben und deren Eigenschaften bzw. Vor- und Nachteile miteinander verglichen. Einleitung 4

5 2 SOAP SOAP [SOAP 1.2] ist ein zustandsloses, XML-basiertes Protokoll für den Nachrichtenaustausch in verteilten Systemen. Die aktuelle Version ist SOAP 1.2. Durch die Verwendung von XML ermöglich SOAP einen Nachrichtenaustausch unabhängig von der verwendeten Programmiersprache bzw. vom verwendeten Programmiermodell und dessen Implementierung. SOAP ist kein reines Anwendungsoder Transportprotokoll sondern setzt vielmehr auf existierende Protokolle für den Nachrichtentransport. Das am meisten verwendete Protokoll für den Transfer von SOAP- Nachrichten ist HTTP. Es ist aber auch möglich, SOAP-Nachrichten über andere Protokolle zu transportieren, wie z.b. SMTP oder FTP. Die ursprüngliche Idee von SOAP war der Austausch von Remote Procedure Calls (RPCs). Remote Procedure Calls erlauben innerhalb eines Programms den Aufruf von Funktionen auf entfernten Rechnern oder Systemen. SOAP ist deshalb auch aus dem Standard XML-RPC 1 entstanden. SOAP wird aber nicht rein für RPCs verwendet, sondern vielmehr für den einfachen Informationsaustausch auf Basis von XML zwischen Systemen. 2.1 Struktur von SOAP-Nachrichten SOAP-Nachrichten bestehen aus einem sogenannten SOAP-Header und einem SOAP- Body. SOAP-Header und SOAP-Body werden in einem sogenannten SOAP-Envelope zusammengefasst. Abbildung 2veranschaulicht diesen Aufbau. SOAP-Envelope SOAP-Header XML-Header Information SOAP-Body XML-Nachricht Abbildung 2 - Aufbau einer SOAP-Nachricht 1 SOAP 5

6 Der SOAP-Body ist verpflichtend und enthält dabei die eigentliche XML-Nachricht, die ausgetauscht werden soll. Der SOAP-Header ist optional und kann zusätzliche Informationen zur Nachricht im SOAP-Body enthalten, z.b. wie diese verarbeitet werden soll. Des Weiteren kann der SOAP-Header Informationen zum Transport der Nachricht beinhalten, z.b. wie die Nachricht transportiert oder geroutet werden soll, wenn die Nachricht nicht direkt zum Empfänger sondern über Intermediäre geschickt wird. Das SOAP-Envelope ist im Wesentlichen nur ein Element, das die Elemente SOAP-Header und SOAP-Body kapselt Austausch von SOAP-Nachrichten Der Austausch von SOAP-Nachrichten erfolgt über zwei Endpunkte, dem SOAP-Sender und dem SOAP-Empfänger. Dabei schickt der SOAP-Sender eine SOAP-Nachricht an den SOAP-Empfänger. Der SOAP-Empfänger bearbeitet die empfangene Nachricht und retourniert eine entsprechende SOAP-Nachricht als Antwort. Kann die empfangene Nachricht nicht beantwortet werden oder ist fehlerhaft, so wird eine Fehlermeldung (SOAP Fault) an den SOAP-Sender geschickt. Es ist auch möglich, die SOAP-Nachricht nicht direkt vom Sender zum Empfänger zu schicken, sondern über einen Intermediär zu leiten. Dieser Intermediär kann eventuell die Nachricht bearbeiten, bevor sie dem SOAP-Empfänger zugestellt wird. Um die technischen Details bzw. generell die Funktionalität einer Web Service- Schnittstelle zu beschreiben, wird meist die XML-basierende Web Services Description Language (WSDL) [WSDL] herangezogen. Eine WSDL-Datei stellt maschinenlesbare Informationen zur Verfügung, wie ein Web Service aufgerufen werden kann, welche Parameter es erwartet bzw. welche Datenstrukturen retourniert werden. WSDL wird häufig im Zusammenhang mit SOAP verwendet, SOAP stellt aber nur eine Binding- Variante wenn auch die fast ausschließlich verwendete dar. Für das Auffinden von Web Services und deren WSDL-Beschreibung wird üblicherweise UDDI (Universal Description, Discovery and Integration) [UDDI] verwendet. UDDI ist ebenfalls eine plattformunabhängige, XML-basierte Spezifikation für Register, welche Mechanismen zum Registrieren und Auffinden von Web Services bereitstellen. Die Kommunikation mit einem UDDI-Register erfolgt ebenfalls mittels SOAP-Nachrichten. 2.3 Beispiel Die folgenden Tabelle 1 und Tabelle 2 zeigen ein Beispiel einer SOAP-Request- und SOAP-Response-Nachricht. Das Beispiel ist zum Großteil von [Hüff10] übernommen und zeigt die Abfrage eines Standorts z.b. eines mobilen Geräts. Die fett hervorgehobenen Elemente kennzeichnen SOAP-Header, SOAP-Body, sowie das umschließende SOAP- Envelope. Die restlichen Elemente stellen die eigentliche über SOAP ausgetauschte SOAP 6

7 Nachricht dar (im SOAP-Body) sowie zusätzliche Verarbeitungsinformationen der Nachricht (im SOAP-Header). In diesem Beispiel werden beide Nachrichten über HTTP übertragen. POST /service/ HTTP/1.1 Host: Content Type: application/xml Content Length: 156 Tabelle 1 Beispiel einer SOAP-Request-Nachricht [Hüff10] <env:envelope xmlns:env" <env:header> <ns:priority xmlns:ns=" </env:header> <env:body> <ns:requestlocation xmlns:ns=" </env:body> </env:envelope> HTTP/ OK Content Type: application/xml Content Length: 270 Tabelle 2 - Beispiel einer SOAP-Response-Nachricht [Hüff10] <S:Envelope xmlns:s=" <S:Header/> <S:Body> <ns:requestlocationresponse xmlns:ns=" <location> <latitude>1</latitude> <longitude>2</longitude> </location> </ns:requestlocationresponse> </S:Body> </S:Envelope> Zur Veranschaulichung von REST wird dasselbe Beispiel verwendet, um die Unterschiede besser zu illustrieren (siehe Abschnitt 0). 2.4 Vor- und Nachteile Dieser Abschnitt beschreibt einige Vor- und Nachteile von SOAP Vorteile Dieser Abschnitt beschreibt einige Vorteile von SOAP. SOAP 7

8 Unabhängigkeit von der Umgebung SOAP erreichte vor allem deswegen so eine Popularität, da es unabhängig von der Plattform, vom Betriebssystem, von der Programmiersprache und vom darunterliegenden Transportprotokoll verwendet werden kann. SOAP-Nachrichten können beispielsweise über HTTP, FTP, SMTP, etc. übertragen werden. Weiters ist es egal, ob ein SOAP-Endpunkt in Java, PHP, etc. geschrieben wurde, die Kommunikation ist interoperabel. [Suda03] XML-Basiert SOAP ist XML-basiert und erbt somit die wichtigsten Vorteile und Eigenschaften auch von XML. Dies inkludiert die Form und Struktur von XML-Dokumenten, sowie deren menschen- und gleichzeitig maschinenlesbare Form. Dazu kommen noch die strukturierten Beschreibungsmöglichkeiten von Web Services mittels WSDL oder UDDI. [Suda03] Just in Time Service-Zusammenstellung SOAP Web Services sind üblicherweise nicht streng miteinander, sondern eher lose gekoppelt. Dies bietet die Möglichkeit, Services bei Bedarf aufzufinden und dynamisch miteinander zu verbinden bzw. in Applikationen zu integrieren. Services können aufgrund ihrer WSDL-Beschreibung auch einfach ausgetauscht werden. [Suda03] Versionierung Obwohl die SOAP Spezifikation mit Nummern zur Versionierung versehen ist, gibt es keine derartige Nummerierung zur Kennzeichnung der SOAP Version im SOAP-Envelope Element. Vielmehr verlässt sich die SOAP-Spezifikation auf den verwendeten XML- Namespace-URI im SOAP-Envelope. Das Resultat ist, dass man keine genaue Aussage über die Version treffen kann, sondern nur sagen kann, ob die Version gleich oder unterschiedlich ist. Dieses Vorgehen wurden von den Entwicklern von SOAP explizit gewählt und erlaubt ein flexibleres Verhalten von Web Service Implementierungen. [GDS+04] Nachteile Dieser Abschnitt beschreibt einige Nachteile von SOAP Nachrichtengröße Obwohl XML einige Vorteile bringt, bringt es auch einiges an Overhead mit sich, sodass die übertragene Nachricht wesentlich größer ist als der reine Informationsgehalt. Dies ist vor allem ein beträchtlicher Nachteil, wenn große Daten übertragen werden sollen und die Bandbreite begrenzt ist. XML kann aber auch die Performance beeinträchtigen, da SOAP 8

9 das Parsen von XML und das Umwandeln von XML in Objekte und vice versa doch einiges an Rechenleistung benötigt. [Suda03] Latenzzeit Wird eine SOAP-Nachricht nicht direkt zum Empfänger geschickt sondern über mehrere Knoten geroutet, so muss jeder Knoten die SOAP-Nachricht parsen, um die Header- Informationen zu lesen, welche Informationen für die weitere Bearbeitung der Nachricht beinhalten können. Bei geringer Bandbreite von Verbindungen kann dies leicht zu Problemen oder Engpässen führen. [Suda03] Formalität SOAP-Nachrichten bzw. Schnittstellen sind durch die Verwendung von XML-Schema zur Beschreibung sehr stark spezifiziert. D.h. nur entsprechend dem Service angepasste Clients können die Nachrichten verarbeiten. Änderungen im Service bedingen daher üblicherweise auch Änderungen im Client. [Hüff10] SOAP 9

10 3 REST Mit REST (Representational State Transfer) [Fiel00] wird kein eigenes Protokoll oder Standard für Web Services bezeichnet, sondern ein eigener Architekturstil für das Internet bzw. Web. REST wurde von Roy Fielding im Rahmen seiner Dissertation im Jahr 2000 entworfen. REST setzt in seiner Architektur auf ein Client-Server-Modell. Dabei kann ein Client auf Ressourcen, die von einem Server bereitgestellt werden, via HTTP zugreifen. REST unterstützt kein anderes Transportprotokoll. Bereitgestellte Ressourcen sind beispielsweise normale HTML-Seiten, Bilder, aber auch XML-Dokumente. All diese Ressourcen sind über eine URL adressiert und können vom Client darüber angesprochen und abgerufen werden. Für den Zugriff auf diese Ressourcen werden keine eigenen Befehle definiert, sondern jene, die von HTTP bereits zur Verfügung stehen. Diese Befehle sind im Wesentlichen GET, POST, PUT und DELETE. Nach [Wiki_REST] können aber auch noch andere HTTP-Befehle für die Kommunikation verwendet werden. 3.1 Struktur von REST-Nachrichten Für REST-Nachrichten existiert keine eigene Spezifikation oder Struktur, sie sind vielmehr einfache HTTP-Request- und HTTP-Response Nachrichten, die zwischen Client und Server ausgetauscht werden. Eine REST-Request-Nachricht ist somit beispielsweise ein einfacher HTTP-GET-Request auf eine Ressource, die über eine URL adressiert wird. Die HTTP-Response enthält in diesem Fall die Ressource, z.b. einen einfachen Text oder ein Bild. Es besteht jedoch die Möglichkeit, anhand des MIME-Types eine Unterscheidung für den Rückgabetyp der Response zu treffen. Dabei gibt der Client im HTTP-Request den gewünschten MIME-Type mit und der Server antwortet sofern implementiert beispielsweise je nach angegebenen MIME-Type entweder mit einer HTML-Seite oder einem XML-Dokument [KlMa04]. 3.2 Austausch von REST-Nachrichten REST-Nachrichten sind einfache HTTP-Nachrichten, wobei keine besondere Nachrichten-Struktur vorgeschrieben ist. Es können beliebige Daten zwischen Client und Server ausgetauscht werden. Für den Austausch von Nachrichten werden hauptsächlich die von HTTP vorgegeben Kommandos GET, POST, PUT und DELETE verwendet. Ein Client kann diese Befehle verwenden um am Server Ressourcen abzurufen (GET), zu verändern (POST), neu zu erstellen (PUT), oder zu löschen (DELETE). Um den Austausch von REST-Nachrichten einfacher zu erklären, wird auf ein Warenkorb-Beispiel in einem Onlineshop nach [Baye02] und [Fron11] zurückgegriffen. REST 10

11 Die Artikel (Ressourcen) des Onlineshops sind dabei alle über eine URL adressiert und verfügbar. GET: HTTP-Request: GET /artikel/1234 Mit diesem HTTP-GET-Befehl ruft der Client vom Server Informationen zum Artikel mit der Nummer 1234 ab. Der Server antwortet mit entsprechenden Informationen. Nachdem kein Standard für die Repräsentation des Artikels vorgegeben ist, kann die Artikelinformation z.b. als HTML, XML, etc. dem Client retourniert werden. Zwischen Client und Server muss jedoch ein gemeinsames Verständnis über die Repräsentation vorhanden sein. Eine HTTP-Response, die Artikel-Informationen als XML zurückliefert, könnte z.b. wie folgt aussehen: HTTP-Response: HTTP/ OK Content-Type: text/xml <?xml version="1.0"?> <artikel xlink:href= nr="1234"> <buch>e-government ABC</buch> <preis>100</preis> </artikel> POST: HTTP-Request: POST /artikel/warenkorb/3333 artikelnummer=0815 Dieser POST-Befehl fügt zum Warenkorb mit der Nummer 3333, dessen Inhalt z.b. mit einem GET/warenkorb/3333 abgerufen werden kann, den Artikel mit der Nummer 0815 hinzu. HTTP-Response: HTTP/ OK Content-Type: text/xml <?xml version="1.0"?> <warenkorb xlink:href= nr="3333" <artikel xlink:href= nr="1234"> <buch>e-government ABC</buch> <preis>100</preis> </artikel> <artikel xlink:href= nr="0815"> <buch>it Sicherheitshandbuch</buch> <preis>100</preis> REST 11

12 </artikel> </warenkorb> Mit der HTTP-Response und dem HTTP-Status Code 200 wird angezeigt, dass der Befehl erfolgreich ausgeführt und der Artikel dem Warenkorb hinzugefügt wurde. Abhängig von der Serverimplementierung, kann der gesamte Warenkorb mit dem hinzugefügten Artikel dem Client in der Antwort zurückgeliefert werden, wie hier gezeigt. PUT: HTTP-Request: PUT /artikel <artikel xlink:href= nr="2345"> <buch>moa-mocca</buch> <preis>100</preis> </artikel> Mit dem PUT-Befehl kann ein neuer Artikel mit der Nummer 2345 am Server als Ressource hinzugefügt werden. HTTP-Response: HTTP/ OK Content-Type: text/xml; Content-Length: 30 Der HTTP-Status Code 201 gibt an, dass der Artikel am Server erfolgreich als neue Ressource hinzugefügt wurde. Der restliche Inhalt der HTTP-Response enthält die URL zum neu angelegten Artikel. DELETE: HTTP-Request: DELETE /artikel/2345 Mit dem HTTP-DELETE-Befehl kann man Ressourcen am Server löschen. Hier wird der zuvor hinzugefügte Artikel mit der Nummer 2345 wieder gelöscht. HTTP-Response: HTTP/ OK Die HTTP-Response gibt einfach nur an, dass der Artikel erfolgreich gelöscht wurde. Über die URL ist der Artikel nun nicht mehr erreichbar. 3.3 Beispiel Die folgende Tabelle 3 und Tabelle 4 zeigt dasselbe Beispiel einer Ortsabfrage (wie in Abschnitt 2.3 für SOAP) nur mittels REST. Der fett markierte Pfad (/location) gibt dabei den Aufruf des REST-Services an. Außer dem Aufruf der URL und der Angabe des MIME- REST 12

13 Types enthält der HTTP-Request keine weiteren Informationen. In der HTTP-Response wird auch nur reines XML übertragen, ohne Overhead-Informationen wie bei SOAP. GET /service/location HTTP/1.1 Host: Accept: application/xml Tabelle 3 Beispiel einer REST-Request-Nachricht [Hüff10] HTTP/ OK Content Type: application/xml Content Length: 73 <location> <latitude>1</latitude> <longitude>2</longitude> </location> Tabelle 4 - Beispiel einer REST-Response-Nachricht [Hüff10] 3.4 Vor- und Nachteile Dieser Abschnitt beschreibt einige Vor- und Nachteile von REST Vorteile Dieser Abschnitt beschreibt einige Vorteile von REST Unabhängigkeit von der Umgebung Wie SOAP ist auch die Verwendung von REST unabhängig von der zugrundeliegenden Plattform, vom Betriebssystem oder von der Programmiersprache. Dies liegt vor allem an der Verwendung von HTTP als Transportprotokoll Unabhängigkeit der Clients REST-Clients benötigen keine spezielle Funktionalität, sie müssen im Endeffekt nur HTTP sprechen können. Ändert sich eine Funktion am Service, so muss der Client nicht sofort angepasst werden, da sich die HTTP-Funktionen nicht ändern Skalierbarkeit Durch die Zustandslosigkeit von REST ist eine hohe Skalierbarkeit gegeben. Des Weiteren erhöht die Möglichkeit eines flexiblen Hinzufügens von Ressourcen die Skalierbarkeit. [Hüff10] REST 13

14 3.4.2 Nachteile Dieser Abschnitt beschreibt einige Nachteile von REST Fehlende Standardisierung [Hüff10] kritisiert bei REST die fehlende Standardisierung. REST-Services und deren Schnittstellen können zwar mittels WADL (Web Application Description Language) [WADL] konkreter beschrieben werden, für die Beschreibung von Ressourcen fehlt aber solch eine standardisierte Möglichkeit Kein Verzeichnisdienst REST-Services sind eher rein für Client-Server-Verbindungen ausgelegt und nicht für verteilte Umgebungen. In REST gibt es keinen Verzeichnisdienst, wo REST-Services und deren Funktionalität beschrieben sind und von dort aus abgerufen werden können. Neue Services können nur über URLs angeboten werden. [Alda10] REST 14

15 4 SOAP vs. REST In diesem Abschnitt wird SOAP und REST anhand unterschiedlicher Kriterien miteinander verglichen. Bevor ein Vergleich durchgeführt wird, wird nochmals der grundlegende Unterschied in der Funktionsweise dargelegt. Der Nachrichtenaustausch zwischen Client und Server erfolgt bei SOAP nämlich anders als bei REST. Die für die Veranschaulichung verwendeten Darstellungen sind an [Baye02], [Fron11], und [KlMa04] angelehnt. HTTP Client HTTP Server SOAP-Sender SOAP-Empfänger Objekte/ Ressourcen SOAP-Request1 POST /soap/router Objekt1 SOAP-Request2 /soap/router Objekt2 SOAP-Request3 Objekt3 Abbildung 3 - Funktionsweise von SOAP Abbildung 3 illustriert schematisch die allgemeine Funktionsweise von SOAP. Es wird davon ausgegangen, dass HTTP als Transportprotokoll verwendet wird. SOAP-Request- Nachrichten werden von einem SOAP-Sender (HTTP Client) mittels HTTP-POST-Befehl an den SOAP-Empfänger (HTTP Server) übertragen. Alle Request-Nachrichten werden an denselben Endpunkt (/soap/router) geschickt. Der SOAP-Empfänger extrahiert die Nachricht und entscheidet dann auf Basis der enthaltenen Funktion, welche Ressource bzw. welches Objekt angesprochen werden soll bzw. für die Abarbeitung des Requests benötigt wird. D.h. alle eingehenden Nachrichten werden zuerst beim SOAP- Empfänger gebündelt und nach Anschauen des Inhalts entsprechend weitergeleitet. SOAP vs. REST 15

16 HTTP Client HTTP Server REST-Client REST-Server Objekte/ Ressourcen GET /objekt1 HTTP-Request1 /objekt1/* Objekt1 GET /objekt2 HTTP-Request2 /objekt2/* Objekt2 HTTP-Request3 POST /objekt3 /objekt3/* Objekt3 Abbildung 4 - Funktionsweise von REST Abbildung 4 veranschaulicht die allgemeine Funktionsweise von REST. Wie für REST notwendig, wird auch hier HTTP für die Übertragung von Nachrichten verwendet. Wesentlicher Unterschied zu SOAP ist, dass ein Objekt bzw. eine Ressource mittels HTTP- Befehl und passender URL direkt angesprochen werden kann. D.h. die Nachrichten werden nicht wie bei SOAP gebündelt, sondern der REST-Server (Web Server) kann direkt anhand der URL unterscheiden, welche Ressource angesprochen werden will. Auch für die Auswahl der entsprechenden Funktion muss die eingehende Nachricht nicht geöffnet werden. [KlMa04] und [Baye02] stellen den Unterschied in der Funktionsweise zwischen SOAP und REST relativ einfach anhand eines klassischen Briefbeispiels dar. Bei SOAP werden alle Briefe zuerst an die Firmenadresse geschickt, dort geöffnet, und anhand des enthaltenen Adressaten an die eigentliche Person weitergeleitet. Im Gegensatz dazu werden bei REST alle Briefe direkt an die jeweilige Person übermittelt. In den folgenden Unterabschnitten wird nun SOAP und REST anhand unterschiedlicher Kriterien verglichen. 4.1 Implementierung SOAP benötigt üblicherweise mehr Implementierungsaufwand als REST, da in SOAP zwingend XML umgesetzt werden muss, wohingegen bei REST der Nachrichten-Inhalt flexibler gestaltet werden kann. Außerdem muss bei REST keine eigene Schnittstelle definiert werden, da diese durch das HTTP-Protokoll vorgegeben ist. Nach [KlMa04] erfordert SOAP einen stärkeren Zusammenhang zwischen Client und Server. Ändert sich das SOAP-Interface beim Server, so muss auch der Client dementsprechend neu angepasst werden. Bei Verwendung von REST ist dies nicht notwendig. Ändert sich eine SOAP vs. REST 16

17 Ressource oder kommt eine neu hinzu, ist es nur notwendig, die entsprechende URL zur Ressource anzupassen. Das restliche Interface bleibt gleich. 4.2 Austauschformat Bei SOAP ist XML zwingend als Nachrichtenformat vorgeschrieben. Natürlich können innerhalb von SOAP-Nachrichten auch andere Formate wie Text oder beliebige Daten in Base64-kodierter Form übertragen werden. Binäre Daten können in SOAP aber auch einfach als Attachment an ein SOAP-Envelope angehängt werden, wie in [SOAP_Att] oder [MTOM] spezifiziert. REST ist hier flexibler und spezifiziert kein Format für den Austausch von Inhalten. Hier kommt aber oft JSON 2 (JavaScript Object Notation) zum Einsatz, ein einfaches und textbasierendes Datenaustauschformat. Prinzipiell kann über den MIME-Type auch angegeben werden, welches Austauschformt für Daten in einer HTTP-Response verwendet werden soll. 4.3 Transportprotokoll SOAP-Nachrichten können über unterschiedliche Transportprotokolle übertragen werden, wie z.b. HTTP, FTP, oder SMTP. Hier ist von SOAP mehr Flexibilität gegeben als von REST, welches von seiner Architektur aus nur eine Verwendung von HTTP vorsieht. 4.4 Schnittstellenbeschreibung SOAP-Schnittstellen können einfach durch ein WSDL-File formal syntaktisch beschrieben werden. Eine WSDL-Beschreibung einer SOAP-Schnittstelle ist programmiersprachenunabhängig und enthält beispielsweise Input- und Output- Nachrichten sowie zu verwendende Bindings. Im Endeffekt, sind jede SOAP-Schnittstelle und deren Nachrichten über ein XML-Schema detailliert beschrieben. Eine Schnittstellenbeschreibung von REST-Services ist nur zum Teil standardisiert möglich [Horn11]. Ähnlich wie für SOAP kann für REST-Services WADL herangezogen werden. WADL ist ebenfalls XML-basiert und für die Beschreibung von HTTP-basierten Services ausgelegt. Eine WADL-Beschreibung enthält z.b. die vom Server zur Verfügung gestellten Ressourcen, deren Zugriffsbefehle und notwendige Parameter. Eine standardisierte Möglichkeit zur Beschreibung von Ressourcen existiert nicht. 2 SOAP vs. REST 17

18 4.5 Frameworks Für SOAP existieren seit Jahren bereits entsprechende Frameworks und Libraries. Bekannte Vertreter, vor allem in der Java-Umgebung sind Apache Axis 3 oder JAX-WS 4 (JSR 224), eine Java-API zum Erstellen von Web Services mit zugehöriger Referenz- Implementierung (Metro). Für REST existiert auch eine entsprechende Java-API namens JAX-RS 5 (JSR 311), für die auch eine Referenzimplementierung mit dem Namen Jersey 6 existiert. 4.6 Unabhängigkeit von der Umgebung Sowohl SOAP als auch REST sind von der Umgebung unabhängig. Es gibt in beiden Fällen keine Notwendigkeit eine bestimmte Plattform zu verwenden, ein bestimmtes Betriebssystem zu verwenden, oder das Service in einer bestimmten Sprache zu programmieren. Dies liegt einerseits an der Verwendung von XML und andererseits an der Verwendung von HTTP als Transportprotokoll. 4.7 Performance SOAP hat hier den Nachteil, dass durch die Verwendung von XML ein relativ großer Overhead entsteht, einerseits in der Datenmenge und andererseits durch das performance-intensive Parsen von XML. Das Verhältnis von Nutzdaten zu Gesamtdaten ist bei der Verwendung von SOAP wesentlich höher als bei REST, nimmt aber mit zunehmender Größe der Nutzdaten ab. Bei SOAP existiert beispielsweise ein eigener Header, welcher zusätzliche Informationen enthalten kann. REST beschränkt zusätzliche Information auf HTTP-Header. Bei SOAP muss auch jede Nachricht geparsed werden, bevor sie weitergeleitet oder verarbeitet wird. Bei REST muss der Nachrichteninhalt zur Weiterleitung nicht angesehen werden. Nachdem REST z.b. HTTP-GET verwendet (SOAP verwendet nur HTTP-POST), können solche Nachrichten auch am Client bei Bedarf gecached werden. Dies kann auch einen entsprechenden Performance-Vorteil bringen. [KlMa04] 4.8 Sicherheit Sowohl REST- als auch SOAP-Nachrichten können bei Verwendung HTTP Firewalls ohne Probleme passieren. REST bietet hier aber vor allem auf Firewall-Ebene mehr Möglichkeiten, Anfragen zu blockieren oder sperren. Soll beispielsweise der Zugriff auf eine Ressource nicht erlaubt sein, so muss in der Firewall nur die adressierende URL SOAP vs. REST 18

19 gesperrt werden. Dasselbe gilt für HTTP-Befehle. Soll auf eine Ressource nur lesend zugegriffen werden, so wird mittels Firewall nur der HTTP-GET-Befehl erlaubt und alle anderen gesperrt. Bei Verwendung von SOAP ist eine Zugriffsregelung aufs Web Service mittels Firewall nicht möglich. Bei SOAP muss zuerst in der Anwendung die Nachricht angesehen werden, bevor entschieden werden kann, ob die aufrufende Funktion erlaubt wird oder nicht. [KlMa04] Zum Absichern von SOAP Web Services eignet sich WS-Security (WSS) [WSS], eine Spezifikation, die beispielsweise beschreibt, wie Nachrichten verschlüsselt oder signiert werden können. Verschlüsselung oder die Absicherung der Nachricht erfolgt bei REST üblicherweise auf Transportebene unter Verwendung von SSL/TLS. Natürlich kann auch bei SOAP auf SSL/TLS gesetzt werden. Die Verwendung von WS-Security bietet aber die Möglichkeit von Ende-zu-Ende-Sicherheit auch bei Verwendung von Intermediären, was durch reine Verwendung von SSL/TLS nicht möglich ist. 4.9 Zustandsbehaftung Sowohl SOAP als auch REST sind vom Protokoll her zustandslos. Bei REST ergibt sich diese serverseitige Zustandslosigkeit durch die Verwendung von HTTP. Bei SOAP kann man unter Umständen eine Zustandsbehaftung erreichen, z. B. wenn bestimmte IDs in die Header der SOAP-Nachrichten kodiert werden Transaktionen Nachdem die Serverbeschaffenheit von REST und SOAP zustandslos ist, ist es auch schwierig, Transaktionen abzubilden. Nach [KlMa04] können aber in REST extra Ressourcen angelegt werden, mit denen Transaktionen modelliert werden können. So wird diese Ressource dann am Beginn und am Ende von zusammenhängenden Aktionen aufgerufen, um diese Transaktion abbilden zu können. Bei der Verwendung von SOAP ist das Abbilden von Transaktionen einfacher, da die notwendigen Vorkehrungen dafür in die SOAP-Nachrichten kodiert werden können. Eine Möglichkeit ist nach [Horn11] WS-Reliable Messaging (WSRM) [WSRM] Anwendungsgebiet Nach [Horn11] werden REST-Services eher für datenorientierte und synchrone Services mit kurzer Laufzeit eingesetzt. Eine asynchrone Kommunikation ist nach [Horn11] nicht direkt möglich und kann nur über Umwege simuliert werden. Im Gegensatz dazu eignen sich SOAP Services sowohl für datenorientiere als auch prozessorientierte Anwendungen. Die Services können dabei auch eine längere Laufzeit besitzen und vom Timing her synchron oder asynchron sein. Eine asynchrone Kommunikation kann beispielsweise über WS-Notification [WSN] erreicht werden. SOAP vs. REST 19

20 4.12 Fehlerbehandlung SOAP hat Fehlermeldungen (SOAP Faults) bereits in seiner Spezifikation eingebaut. Üblicherweise wird vom SOAP-Server eine detaillierte Fehlerbeschreibung an den SOAP-Client retourniert. REST hingegen hat kein explizites Error-Handling sondern übernimmt lediglich die Status-Codes von HTTP. Eine genaue Beschreibung des Fehlers ist hier nicht möglich Spezifizierte Erweiterungen SOAP ist ein Standard, der vom W3C spezifiziert ist und zu dem auch zahlreiche Spezifikationen zur Erweiterung definiert sind. Häufig verwendete Erweiterungen sind beispielsweise SOAP with Attachments [SOAP_Att], SOAP Message Transmission Optimization Mechanism [MTOM], oder die Spezifikationen aus der WS*-Familie wie z.b. WS-Security [WSS] oder Web Services Reliable Messaging [WSRM]. REST hingegen ist nur ein Architekturstil, der rein die Funktionen von HTTP verwendet und somit auf diese limitiert ist. Es existieren somit keine spezifizierten bzw. standardisierten Erweiterungen zu REST. SOAP vs. REST 20

21 5 Zusammenfassung und Fazit SOAP und REST sind beides unterschiedliche Ansätze für das Abbilden von Web Services. Unterschiede sowie Vor- und Nachteile der einzelnen Ansätze wurden bereits erläutert. Aufgrund des unterschiedlichen Zugangs kann keine klare Aussage getroffen werden, ob für Web Services SOAP oder REST verwendet werden soll. Der Einsatz des jeweiligen Ansatzes hängt einfach von unterschiedlichen Faktoren oder Anforderungen ab. So wird REST nur für Punkt-zu-Punkt-Verbindungen eingesetzt, während SOAP in verteilten Umgebungen auch unter Verwendung von Intermediären Einsatz finden kann. Von der Performance her hat REST gewisse Vorteile, da XML nicht verwendet werden muss und so performance-teures XML parsen vermieden werden kann. Außerdem kann ohne Verwendung von XML Datenoverhead bei der Übertragung vermieden werden. Dies macht REST interessant vor allem für den Einsatz in mobilen Clients, wo Bandbreite üblicherweise limitiert ist. Die Verwendung von XML hat aber auch seine Vorteile, da SOAP-Schnittstellen formal und syntaktisch beschrieben werden können. Nichtsdestotrotz sind dadurch Clients sehr stark an den Server gebunden, wobei bei REST Änderungen am Server für den Client nicht so stark ins Gewicht fallen. SOAP bietet hingegen wiederum mehr Möglichkeiten der Erweiterung, da sehr viele Spezifikationen dazu (z.b. die WS*-Standards) bereits existieren. Ende-zu-Ende-Sicherheit ist so beispielsweise realisierbar (durch WS-Security), während bei REST die Sicherheit auf Transportebene (unter Verwendung von SSL/TLS) abgewälzt wird. Durch zusätzliche Erweiterungen bei SOAP lässt sich auch eine asynchrone Kommunikation bzw. Transaktionen realisieren, was bei REST nur durch Umwege und kompliziert erreichbar ist. Zusammenfassend kann gesagt werden, dass REST überall dort verwendet werden sollte, wo Web Services schnell, ohne viel Overhead und Implementierungsaufwand, und unter Verwendung von HTTP erstellt werden sollen. SOAP sollte hingegen dort verwendet werden, wo komplexere Prozesse abgebildet werden müssen, eine formale Schnittstellenbeschreibung notwendig ist, und der Implementierungsaufwand bzw. Bandbreite keine Rolle spielen. Tabelle 5 gibt abschließend eine Übersicht für die wichtigsten Unterschiede zwischen SOAP und REST. Weiterführende Vergleiche und Übersichtstabellen sind unter beispielsweise unter [Alda10], [Horn11], [Mota13] oder [Sand10] zu finden. Zusammenfassung und Fazit 21

22 Tabelle 5 - Zusammenfassung SOAP vs. REST Kriterium SOAP REST Implementierungsaufwand höher geringer Austauschformat XML Beliebig (XML, HTML, JSON, Text, etc.) Transportprotokoll HTTP, FTP, SMTP, etc. HTTP Schnittstellenbeschreibung WSDL, XML-Schema WADL Frameworks (Java) JAX-WS (Metro) JAX-RS (Jersey) Unabhängigkeit von der Umgebung unabhängig Performance schlechter gut unabhängig Sicherheit WS-Security, SSL/TLS Über Firewall- oder Web Server-Einstellungen, SSL/TLS Zustandsbehaftung zustandslos, aber Umständen zustandsbehaftet zustandslos Transaktionen über WS-Reliable Messaging über zusätzliche Ressourcen Anwendungsgebiet datenorientiere als auch prozessorientierte synchrone oder asynchrone Services mit längerer Laufzeit datenorientierte und synchrone Services mit kurzer Laufzeit Fehlerbehandlung SOAP Faults HTTP Status-Codes Spezifizierte Erweiterungen WS*-Familie, MTOM, etc. Keine Zusammenfassung und Fazit 22

23 Dokumentenhistorie Version Datum Autor(en) Anmerkung Bernd Zwattendorfer Bernd Zwattendorfer Dokumenterstellung Erster Draft Arne Tauber Kommentare Bernd Zwattendorfer Finale Version Zusammenfassung und Fazit 23

24 Referenzen [Alda10] Sascha Alda: Service-Orientierte Architekturen - Kapitel 8: REST, 2010, [Baye02] Thomas Bayer: REST Web Services Eine Einführung, 2002, [Fiel00] Roy Thomas Fielding: Architectural Styles and the Design of Network-based Software Architectures, 2000, [Fron11] Nicole Fronhoffs: Webservices : SOAP und REST, 2011, [GDS+04] Steve Graham, Doug Davis, Simeon Simeonov, Glen Daniels, Peter Brittenham, Yuichi Nakamura, Paul Fremantle, Dieter Koenig, Claudia Zentner: Building Web Services with Java: Making Sense of XML, SOAP, WSDL, and UDDI, 2nd Edition [Horn11] Torsten Horn: RESTful Web Services mit JAX-RS und Jersey, 2011, [Hüff10] Marc Hüffmeyer: Verteilte und mobile Applikationen - Arbeitsgebiet 3: Verteilte mobile Dienste in Next Generation Networks, 2010, &Itemid=91 [KlMa04] Thomas Kloster, Oskar Martin: Vergleich SOAP und REST, 2004, osnabrueck.de/fileadmin/compass/lehrveranstaltungen/sose_04/soap- Rest_Ausarbeitung.pdf [Mota13] Jagadeesh Motamarri: Compare RESTful vs SOAP Web Services, 2013, [MTOM] W3C: SOAP Message Transmission Optimization Mechanism, 2005, [Sand10] [SOAP 1.2] Sebastian Sander: Performanceanalyse von SOAP- und REST- basierten Services in einer Linguistic Resources Umgebung, 2010, W3C: SOAP Version 1.2, 2007, [SOAP_Att] W3C: SOAP 1.2 Attachment Feature, 2004, [Suda03] Brian Suda: SOAP Web Services, 2003, [UDDI] OASIS: OASIS UDDI Specification TC, 2005, [WADL] W3C: Web Application Description Language, 2009, [Wiki_REST] Wikipedia: Representational State Transfer, [WS_Act] W3C: Web Services Activity, 2008, [WS_Arch] W3C: Web Services Architecture, 2004, [WSDL] W3C: Web Services Description Language (WSDL) Version 2.0, 2007, Zusammenfassung und Fazit 24

25 [WSN] OASIS: OASIS Web Services Notification (WSN) TC, [WSRM] OASIS: OASIS Web Services Reliable Messaging (WSRM) TC, [WSS] OASIS: OASIS Web Services Security (WSS) TC, Zusammenfassung und Fazit 25

Grundlagen der Web-Entwicklung INF3172

Grundlagen der Web-Entwicklung INF3172 Grundlagen der Web-Entwicklung INF3172 Web-Services Thomas Walter 16.01.2014 Version 1.0 aktuelles 2 Webservice weitere grundlegende Architektur im Web: Webservice (Web-Dienst) Zusammenarbeit verschiedener

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Web-Konzepte für das Internet der Dinge Ein Überblick

Web-Konzepte für das Internet der Dinge Ein Überblick Web-Konzepte für das Internet der Dinge Ein Überblick Samuel Wieland [email protected] ETH Zürich Seminar Das Internet der Dinge Historisches Tim Berners-Lee Erster Web-Server Bildquelle: Wikimedia

Mehr

SOA mit.net: Vom Geschäftsprozess zur Lösung

SOA mit.net: Vom Geschäftsprozess zur Lösung SOA mit.net: Vom Geschäftsprozess zur Lösung Manfred Steyer Aktuelles Buch.Net 4.0 Update ISBN 978-3866454439 http://tinyurl.com/net4update 1 Kontakt [www] www.softwarearchitekt.at [mail] [email protected]

Mehr

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

Web Services. Standards und Realisierung in Java

Web Services. Standards und Realisierung in Java Standards und Realisierung in Java http://werner.gaulke.net 4.6.2007 Idee Aufbau und Standards und Java Outline 1 Idee Idee hinter? 2 Aufbau und Standards Schichtenmodell WSDL Fazit WSDL SOAP Fazit SOAP

Mehr

SOAP und REST Ein Vergleich von service- und ressourcenorientierten Architekturen und deren Einsatz im VMA-Projekt

SOAP und REST Ein Vergleich von service- und ressourcenorientierten Architekturen und deren Einsatz im VMA-Projekt Verteilte und mobile Applikationen - Arbeitsgebiet 3: Verteilte mobile Dienste in Next Generation Networks SOAP und REST Ein Vergleich von service- und ressourcenorientierten Architekturen und deren Einsatz

Mehr

Web Services Die Definition von Web Services in der Theorie und FNT-Command als Web Service in der Praxis

Web Services Die Definition von Web Services in der Theorie und FNT-Command als Web Service in der Praxis Web Services Die Definition von Web Services in der Theorie und FNT-Command als Web Service in der Praxis Philipp Tendyra Web Service in kurzen Worten dient der Kommunikation zwischen verschiedenen Systemen

Mehr

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

Kapitel WT:VI (Fortsetzung)

Kapitel WT:VI (Fortsetzung) Kapitel WT:VI (Fortsetzung) VI. Architekturen und Middleware-Technologien Client--Architekturen Ajax REST RPC, XML-RPC, Java RMI, DCOM Web-Services CORBA Message-oriented-Middleware MOM Enterprise Application

Mehr

Implementierung von Web Services: Teil I: Einleitung / SOAP

Implementierung von Web Services: Teil I: Einleitung / SOAP Implementierung von Web Services: Teil I: Einleitung / SOAP Prof. Dr. Kanne - FSS 2007 Carl-Christian Kanne, February 25, 2007 Web Services - p. 1/12 Web Services: Allgemein XML Datenaustauschformat plattformunabhängig

Mehr

<Insert Picture Here> Einführung in SOA

<Insert Picture Here> Einführung in SOA Einführung in SOA Markus Lohn Senior Principal Consultant SOA? - Ideen Selling Oracle To All SAP On ABAP Increasing Sales Of Applications 3 Agenda Motivation SOA-Definition SOA-Konzepte

Mehr

Architektur von REST basierten Webservices

Architektur von REST basierten Webservices 28.11.2005 Architektur von REST basierten Webservices Referent MARK ALTHOFF REST was invented by ROY T. FIELDING and RICHARD N. TAYLOR Geschichtlicher Hintergrund von REST 1994-1995 taucht der Begriff

Mehr

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer *Was sind Web Services? *Beispiele für Web Services *Web Service Architektur *Web Services Technologien *Fazit 2 *Übertragungsstandard

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP) Enterprise Applikation Integration und Service-orientierte Architekturen 09 Simple Object Access Protocol (SOAP) Anwendungsintegration ein Beispiel Messages Warenwirtschaftssystem Auktionssystem thats

Mehr

Webservices Ein Vortrag von:

Webservices Ein Vortrag von: Webservices Ein Vortrag von: Andreas Münstermann Michael Reiher Markus Buschky Gliederung Einführung in Webservices Technische Grundlagen SOAP UDDI WSDL Sicherheitskonzepte Blick in die Zukunft Einführung

Mehr

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik

SOA. Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik SOA Prof. Dr. Eduard Heindl Hochschule Furtwangen Wirtschaftsinformatik Laderampen müssen passen Modularisieren Softwarearchitektur Modul A Modul B Modul C Modul D Große Anwendung im Unternehmen Modul

Mehr

Web Service Entwicklung mit Java. Sven Lindow

Web Service Entwicklung mit Java. Sven Lindow Web Service Entwicklung mit Java Sven Lindow 22.11.2006 Agenda Einleitung SOAP, REST, WSDL, UDDI Web Services mit Java JWSDP JAX-RPC, JAX-WS 2.0 AXIS, AXIS2 Web Services nutzen Google, Ebay Web Services

Mehr

WSDL. Heutige Vorlesung. Wozu WSDL? Wie wird WSDL verwendet? Language. Services. Description. Web. Abstrakte vs. konkrete Syntax

WSDL. Heutige Vorlesung. Wozu WSDL? Wie wird WSDL verwendet? Language. Services. Description. Web. Abstrakte vs. konkrete Syntax Heutige Vorlesung WSDL Prinzipieller Aufbau von WSDL-Beschreibungen Beschreibung von Protokoll-Bindungen in WSDL Vor- und Nachteile von WSDL Lernziel Google-WSDL lesen und erweitern können Klaus Schild,

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider Wissenschaftliche Vertiefung Web Services Esslingen, 22. Januar 2016 Agenda 1. Einführung 2. Serviceorientierte Architektur 3. SOAP Web Service 4. Standards und Protokolle von SOAP Web Services 5. Bewertung

Mehr

VS11 Slide 1. Verteilte Systeme. Vorlesung 11 Sebastian Iwanowski FH Wedel

VS11 Slide 1. Verteilte Systeme. Vorlesung 11 Sebastian Iwanowski FH Wedel VS11 Slide 1 Verteilte Systeme Vorlesung 11 Sebastian Iwanowski FH Wedel VS11 Slide 2 Verteilte Systeme 1. Innovative Beispiele aus der Praxis 2. Allgemeine Anforderungen und Techniken verteilter Systeme

Mehr

Architektur von SOAP basierten Web Services

Architektur von SOAP basierten Web Services Architektur von SOAP basierten Web Services André Homeyer 28.11.2005 Worst-Case einer verteilten Anwendung TravelTime Client Benutzerinterface WackyWing Server Flüge suchen TravelTime Server Flüge suchen

Mehr

SOAP Simple Object Access Protocol. Dr. Reinhard Riedl Universität Zürich/Universität Rostock

SOAP Simple Object Access Protocol. Dr. Reinhard Riedl Universität Zürich/Universität Rostock SOAP Simple Object Access Protocol Dr. Reinhard Riedl Universität Zürich/Universität Rostock Vision Implementierung von verteilten Systemen über Systemgrenzen hinweg Integration von heterogenen verteilten

Mehr

Web Services Integration heterogener Systemlandschaften. Prof. Dr. Gregor Engels Fabian Christ 08. Juni 2010

Web Services Integration heterogener Systemlandschaften. Prof. Dr. Gregor Engels Fabian Christ 08. Juni 2010 Web s Integration heterogener Systemlandschaften Prof. Dr. Gregor Engels Fabian Christ 08. Juni 2010 Technische Kooperation Datenaustausch / Benutzung technischer Dienste über das Internet Mein Unternehmen

Mehr

2. WWW-Protokolle und -Formate

2. WWW-Protokolle und -Formate 2. WWW-Protokolle und -Formate Inhalt: HTTP, allgemeiner syntaktischer Aufbau Wichtige Methoden des HTTP-Protokolls Aufbau von Web-Applikationen unter Nutzung von HTTP, HTML, DOM XML, XML-DTD und XML-Schema

Mehr

Verteilte Systeme: Übung 4

Verteilte Systeme: Übung 4 Verteilte Systeme: Übung 4 WSDL und SOAP Oliver Kleine Institut für Telematik https://www.itm.uni-luebeck.de/people/kleine SOAP Nachrichten Serialisierung in XML Root-Element einer SOAP Nachricht ist

Mehr

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES 2016 Software AG. All rights reserved. For internal use only DIGITAL BUSINESS APPLICATIONS DRIVE THE DIGITAL BUSINESS Partner Lieferanten Kunden SaaS

Mehr

REST Grundlagen. Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web. Olga Liskin <[email protected]>

REST Grundlagen. Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web. Olga Liskin <olga.liskin@gmail.com> REST Grundlagen Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web Olga Liskin Übersicht Motivation, Einführung Architekturstil REST RESTful Webservices Patterns,

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 [email protected]

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 [email protected] 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel [email protected] Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

WSDL. Web Services Description Language. André Vorbach. André Vorbach

WSDL. Web Services Description Language. André Vorbach. André Vorbach André Vorbach WSDL Web Services Description Language André Vorbach Übersicht Was ist WSDL? Dokumentenstruktur Elemente Definitions Types Messages porttype Binding Service SOAP-Bindings Beispiel Was ist

Mehr

FuE-Bereich IuK-Systeme im Gesundheitswesen

FuE-Bereich IuK-Systeme im Gesundheitswesen FuE-Bereich IuK-Systeme im Gesundheitswesen IG XML und Web Services Dipl.-Inform. Axel Schwolow IG Kommunikation im Web Entwicklung früher ausschließlich Kommunikation über Browser heute zunehmend direkt

Mehr

Java Web Services. Seminarunterlage. Version 4.03 vom

Java Web Services. Seminarunterlage. Version 4.03 vom Seminarunterlage Version: 4.03 Version 4.03 vom 2. Januar 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

Mehr

E-Services mit der Web-Service-Architektur

E-Services mit der Web-Service-Architektur E-Services mit der Web-Service-Architektur im Seminar Neue Konzepte anwendungsorientierter Middleware - Stefan Kürten - Literatur A. Tsalgatidou and T. Pilioura, An Overview of Standards and Related Rechnology

Mehr

WebService mit MTOM an der AG-Schnittstelle des GKV-Kommunikationsserver

WebService mit MTOM an der AG-Schnittstelle des GKV-Kommunikationsserver WebService mit MTOM an der AG-Schnittstelle des GKV-Kommunikationsserver 1 Einführung Das vorliegende Dokument dient als Informationsgrundlage für die Kommunikation von WebServices via MTOM mit der Arbeitgeber-Schnittstelle

Mehr

RESTful Web. Representational State Transfer

RESTful Web. Representational State Transfer RESTful Web Representational State Transfer 1 Warum REST? REST ist die Lingua Franca des Webs Heterogene (verschiedenartige) Systeme können mit REST kommunizieren, unabhängig von Technologie der beteiligten

Mehr

Seminar Internet Dienste. Webservices

Seminar Internet Dienste. Webservices Universität Ulm Seminar Internet Dienste Webservices Matthias Kirchmayr, SS 2003 Inhaltsverzeichnis 1 Motivation 1 2 Definition 1 3 XML & Co. 3 3.1 XML - extensible Markup Language.................. 3

Mehr

Software Reuse Sommer 2004

Software Reuse Sommer 2004 8. Web Services Peter Sturm Universität Trier Ausgangspunkt Client/Server-Systeme Traditioneller RPC OO-Pendant RMI (CORBA) Probleme Installationbedarf auf Clientseite Aufwendige Installation auf Serverseite

Mehr

Java Web Services mit Apache Axis2 Entwickler

Java Web Services mit Apache Axis2 Entwickler Thilo Frotscher, Dapeng Wang, Marc Teufel Java Web Services mit Apache Axis2 Entwickler Vorwort 15 1 Einleitung 25 1.1 Entstehung 26 1.2 Unterstützte Standards 28 1.3 Was beinhaltet Axis2? 29 1.4 Warum

Mehr

3-schichtige Informationssystem-Architektur

3-schichtige Informationssystem-Architektur 3-schichtige Informationssystem-Architektur plattformunabhängig beliebige Endgeräte Client als Applikation & Applet XML über SOAP Standard plattformunabhängig objektorientierte Architektur multiuserfähig

Mehr

Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams. Jan Kruse, utilitas GmbH

Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams. Jan Kruse, utilitas GmbH Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams Jan Kruse, utilitas GmbH 15.01.2018 Gliederung Einleitung Motivation Ziele Grundlagen ASP.Net Web API REST-API Microsoft

Mehr

REST: Eine leichtgewichtige und einfachere Alternative zu Web Services. W3L AG [email protected]

REST: Eine leichtgewichtige und einfachere Alternative zu Web Services. W3L AG info@w3l.de 1 REST: Eine leichtgewichtige und einfachere Alternative zu Web Services W3L AG [email protected] 2009 2 Inhalt Einführung Grundprinzipien der REST-Architektur Beispiel Entwurf von REST-Anwendungen REST mit

Mehr

ODS 6.0 Schnittstelle

ODS 6.0 Schnittstelle ODS 6.0 Schnittstelle Dieter Müller Server Developer 1 Architektur ODS-Schnittstelle Vergleich ODS 5.x ODS 6.0 ODS 5.x ODS 6.0 ODS Client ODS Server ODS Client ODS Server Stub ORB IIOP Generiert aus

Mehr

XML-RPC & SOAP. Sven Heß & Fabio Caprera Systemprogrammierung SS 08

XML-RPC & SOAP. Sven Heß & Fabio Caprera Systemprogrammierung SS 08 XML-RPC & SOAP & Fabio Caprera Systemprogrammierung SS 08 Inhalt XML-RPC Überblick Entstehung Konzept Fehlerbehandlung Vor- und Nachteile SOAP Überblick Entstehung Konzept Fehlerbehandlung Vor- und Nachteile

Mehr

NAME-VALUE PAIR API ENTWICKLER-DEFINITION DER EXPORT-SCHNITTSTELLE

NAME-VALUE PAIR API ENTWICKLER-DEFINITION DER EXPORT-SCHNITTSTELLE VERANSTALTUNGSKALENDER DER STÄDTE NÜRNBERG, FÜRTH, ERLANGEN, SCHWABACH NAME-VALUE PAIR API ENTWICKLER-DEFINITION DER EXPORT-SCHNITTSTELLE Version 1.1.1 VORWORT Dieses Dokument beschreibt das Name-Value

Mehr

Serviceorientierte Architektur / Web Service

Serviceorientierte Architektur / Web Service / Web Service Hauptseminar im Institut für Verteilte Systeme Nenad Marjanovic Universität Ulm 17.12.2007 Übersicht Was ist SOA? Vorteile aus Sicht des Entwicklers Vorteile aus Sicht des Managers Nachteile

Mehr

Service Web. Michael Menzel Hasso-Plattner-Institut an der Universität Potsdam. 7. Fernausbildungskongress der Bundeswehr

Service Web. Michael Menzel Hasso-Plattner-Institut an der Universität Potsdam. 7. Fernausbildungskongress der Bundeswehr Service Web Michael Menzel Hasso-Plattner-Institut an der Universität Potsdam 7. Fernausbildungskongress der Bundeswehr Agenda 2 Einführung Konzepte dienstbasierter Systeme Web Service Technologien Herausforderungen

Mehr

Gliederung Einleitung Die Interprozess Kommunikation Zusammenfassung Fragen. .NET Remoting. André Frimberger

Gliederung Einleitung Die Interprozess Kommunikation Zusammenfassung Fragen. .NET Remoting. André Frimberger .NET Remoting André Frimberger 30.11.2004 André Frimberger.NET Remoting 1 Gliederung 1 Einleitung Was ist.net Remoting? 2 Die Interprozess Kommunikation Grundkonzept der Datenkanal Parameterübergabe Instanziierung

Mehr

Mobilkommunikation. REST-basierte Dienste für verteilte, mobile Anwendungen. A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt

Mobilkommunikation. REST-basierte Dienste für verteilte, mobile Anwendungen. A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt Mobilkommunikation REST-basierte Dienste für verteilte, mobile Anwendungen A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt Fachhochschule Köln, Institut für Nachrichtentechnik Fachhochschule Köln Anton Gillert,

Mehr

Backend. Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017. Christopher Dörge, Thomas Sauer, David Müller

Backend. Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017. Christopher Dörge, Thomas Sauer, David Müller Backend Hochschule Darmstadt, Fachbereich Informatik, Wintersemester 2016/2017 Christopher Dörge, Thomas Sauer, David Müller Aufbau einer RESTful API mit... Ziel node.js, express und MongoDB Symfony und

Mehr

VAADIN, SPRING BOOT & REST

VAADIN, SPRING BOOT & REST VAADIN, SPRING BOOT & REST Ein Einstieg für Domino Entwickler Stephan Kopp 1 STEPHAN KOPP Software & Solutions Development Tel.: +49 6182 7869420 Mobil: +49 173 3089806 E-Mail: [email protected] 2

Mehr

datenlink-schnittstelle Version 1.0

datenlink-schnittstelle Version 1.0 www.datenlink.info datenlink-schnittstelle Version 1.0 Inhalt 1 Allgemeines 2 1.1 Datenaustausch... 2 1.2 Zugriffstypen... 2 2 Format der Rückgabewerte 3 2.1 HTTP-Statuscodes... 3 2.2 Rückgabewerte...

Mehr

Webservices REST vs. SOAP

Webservices REST vs. SOAP Webservices REST vs. SOAP Amine El Ayadi INF-M2 Anwendungen 1 (SS 2008) Department Informatik HAW Hamburg 17. Juni 2008 1/41 Agenda Einführung & Motivation Webservices SOAP Webservices REST Webservices

Mehr

Web-Applications mit SOAP und RSS. Vortrag 8, Jonas Mitschang, 15.6.2005

Web-Applications mit SOAP und RSS. Vortrag 8, Jonas Mitschang, 15.6.2005 Web-Applications mit SOAP und RSS Vortrag 8, Jonas Mitschang, 15.6.2005 Inhalt Motivation Web Applications / Web Services SOAP - Simple Object Access Protocol RSS - Really Simple Syndication Bewertung

Mehr

Friedrich. Kiltz. Java Webservices

Friedrich. Kiltz. Java Webservices Friedrich Kiltz Java Webservices Symbole.NET 379 @Action 279, 423 @Addressing 372 @BindingType 416 @Consumes 87 @Context 82, 88 @CookieParam 82, 88 @DefaultValue 82, 88 @DELETE 87 @Encoded 82, 88 @Endpoint

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Seminararbeit. Vergleichende Analyse von Webservices für die Kommunikation mit einem AixBOMS-Server

Seminararbeit. Vergleichende Analyse von Webservices für die Kommunikation mit einem AixBOMS-Server Seminararbeit Vergleichende Analyse von Webservices für die Kommunikation mit einem AixBOMS-Server von, ComConsult Kommunikationstechnik GmbH 1. Betreuer: Prof. Ulrich Stegelmann 2. Betreuer: Michael Nieberg

Mehr

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2)

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2) Referat im Rahmen des Proseminars Internettechnologie WS 2007/2008 Thema: Web Services und serviceorientierte Architekturen (SOA) vorgelegt von: Intelligente Web Services sind für das Informationszeitalter,

Mehr

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5 Übersicht Angewandte Informatik 2 - Tutorium 6 Besprechung: Übungsblatt 5 Götz Bürkle ([email protected]) Übungsblatt 5: Aufgabe 4 - Webservices Institut für Angewandte Informatik und Formale Beschreibungsverfahren

Mehr

Forms auf Tablets. Vision oder Realität?

Forms auf Tablets. Vision oder Realität? Forms auf Tablets Vision oder Realität? Die handelnden Personen Jan-Peter Timmermann Entwickler seit 1985 (Informix) OCP Oracle Forms/Reports, PL/SQL Seit 2000 bei Unternehmen wie Opitz, Trivadis und PITSS

Mehr

Stefan Tilkov. REST und HTTP. Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag

Stefan Tilkov. REST und HTTP. Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag Stefan Tilkov REST und HTTP Einsatz der Architektur des Web für Integrationsszenarien dpunkt.verlag ~ы\ 1 Einleitung 1 1.1 Warum REST? 1 1.1.1 Lose Kopplung 2 1.1.2 Interoperabilität 2 1.1.3 Wiederverwendung

Mehr

Modul 9: Web APIs (REST, XHR, SSE, WebSockets)

Modul 9: Web APIs (REST, XHR, SSE, WebSockets) Modul 9: Web APIs (REST, XHR, SSE, WebSockets) 10.06.2018 16:31:22 M. Leischner Internetkommunikation Folie 1 Anwendungsnähe Hochschule Browser Networking APIs, Protocols, and Services - Einordnung statisch

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Eine Untersuchung der Funktionen des Apache Wicket Webframeworks

Eine Untersuchung der Funktionen des Apache Wicket Webframeworks Eine Untersuchung der Funktionen des Apache Wicket Webframeworks Seminararbeit von Olaf Matticzk 1 15.01.2016 (c) by synaix 2016 synaix...your business as a service. Agenda 1. Einleitung 2. Webanwendungen

Mehr

Webservices für eingebettete Systeme

Webservices für eingebettete Systeme Fakultät Informatik Institut für Angewandte Informatik, Professur Technische Informationssysteme Webservices für eingebettete Systeme Dresden, 29.06.2006 Gliederung Einführung Automobilindustrie Webservice

Mehr

Seminararbeit. Konzept einer Schnittstelle zur Benutzerverwaltung in RiskShield-Server. Christoph Laufs INFORM GmbH INFORM GmbH 1

Seminararbeit. Konzept einer Schnittstelle zur Benutzerverwaltung in RiskShield-Server. Christoph Laufs INFORM GmbH INFORM GmbH 1 Seminararbeit Konzept einer Schnittstelle zur Benutzerverwaltung in RiskShield-Server Christoph Laufs INFORM GmbH 2016 - INFORM GmbH 1 Agenda 1. RiskShield-Server 2. Motivation und Anforderungen 3. Web

Mehr

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services Themen Web Services und SOA Wer kennt den Begriff Web Services? Was verstehen Sie unter Web Services? Die Idee von Web Services Ausgangspunkt ist eine (evtl. schon bestehende) Software Anwendung oder Anwendungskomponente

Mehr

Benutzerhandbuch für die Verwendung des viavac HL7 Forcast Webservices (VAC-CDSS)

Benutzerhandbuch für die Verwendung des viavac HL7 Forcast Webservices (VAC-CDSS) Benutzerhandbuch für die Verwendung des viavac HL7 Forcast Webservices (VAC-CDSS) Inhaltsverzeichnis Zweck des Dokuments... 2 Verwendung des Dokuments... 2 Referenzierte Dokumente... 2 Übersicht...3 Allgemeine

Mehr

Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER

Christoph Mathas. SOA intern. » Praxiswissen zu Service-orientierten IT-Systemen HANSER Christoph Mathas SOA intern» Praxiswissen zu Service-orientierten IT-Systemen HANSER Inhalt Vorwort XI 1 Einleitung 1 1.1 Wem nützt dieses Buch? 2 1.2 Weshalb dieses Buch? 3 1.3 Die Kapitelstruktur 4 1.4

Mehr

L-/H-Gas Anpassung. Anpassungshandbuch. Schnittstellenbeschreibung. Datum: Version: 2. Anpassungshandbuch_Schnittstelle_v2.

L-/H-Gas Anpassung. Anpassungshandbuch. Schnittstellenbeschreibung. Datum: Version: 2. Anpassungshandbuch_Schnittstelle_v2. L-/H-Gas Anpassung Anpassungshandbuch Schnittstellenbeschreibung Autor: Fricke, Daniel Datum: 03.11.2014 Version: 2 Dateiname: Anpassungshandbuch_Schnittstelle_v2.docx Änderungen Version / Wann Wer Was

Mehr

Denapp Bankdata Service

Denapp Bankdata Service Denapp Denapp Bankdata Service Beschreibung Eine Beschreibung des oben genannten Webdienstes. Inhaltsverzeichnis Inhaltsverzeichnis... 2 Definitionen und Abkürzungen... 3 1. Allgemeines... 4 2. Mehr Kundenservice!...

Mehr

Microsoft.NET und SunONE

Microsoft.NET und SunONE Microsoft.NET und SunONE, Plattformen und Application Service Providing Agenda Einordnung.NET und SunONE Kurzvorstellung Gegenüberstellung Zusammenfassung ASP (Application( Service Providing) ) und Ausblick

Mehr

XML und SOAP Einführung und Grundlagen

XML und SOAP Einführung und Grundlagen XML und SOAP Einführung und Grundlagen Matthias Böhmer 16.12.2005 Agenda 1. XML 2. SOAP 3. Seife im Buchladen?! E-Commerce :: XML und SOAP Matthias Böhmer 16.12.2005 2 XML :: Einführung (1) extensible

Mehr

Anbindung externer Webanwendung an PDF- AS-WEB 4.0

Anbindung externer Webanwendung an PDF- AS-WEB 4.0 Dokumentation Anbindung externer Webanwendung an PDF- AS-WEB 4.0 Anbindung einer externen Webanwendung an PDF-AS-WEB 4.0 Version 0.3, 05.06.2014 Andreas Fitzek [email protected] Christian Maierhofer

Mehr

Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services?

Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services? Web APIs auf dem Prüfstand Volle Kontrolle oder fertig mit den Azure Mobile Services? Web APIs Wo kommen wir her? Remote Procedure Calls (RPC) Verben/Aktionen im Endpunkt enthalten GetCustomer InsertInvoice

Mehr

Anbindung an WebServices Robert Zacherl

Anbindung an WebServices Robert Zacherl Anbindung an WebServices Robert Zacherl WebServices Definition Wikipedia: Ein Webservice (auch Webdienst) ermöglicht die Maschine-zu-Maschine-Kommunikation auf Basis von HTTP oder HTTPS über Rechnernetze

Mehr

NEWpixi* API und die Umstellung auf REST. Freitag, 3. Mai 13

NEWpixi* API und die Umstellung auf REST. Freitag, 3. Mai 13 NEWpixi* API und die Umstellung auf REST Fakten NEWpixi* API Technik REST-basierend.NET Webservice IIS Webserver Release 31. August 2013, zusammen mit dem NEWpixi* ELI Release Legacy API und erste NEWpixi*

Mehr

Service-Orientierte Architekturen

Service-Orientierte Architekturen Hochschule Bonn-Rhein-Sieg Service-Orientierte Architekturen Kapitel 8: REST Vorlesung im Masterstudiengang Informatik Sommersemester 2010 Prof. Dr. Sascha Alda ([email protected]) (Vorläufiger) Aufbau

Mehr

Verteilte Systeme - Überblick

Verteilte Systeme - Überblick Verteilte Systeme - Überblick... [email protected] Alois Schütte 15. Oktober 2014 1 / 11 Inhaltsverzeichnis Hier wird ein Überblick über die Veranstaltung gegeben. 1 Überblick 2 Inhalt 3 4 Praktikum

Mehr

Dennis Juchem, Andreas Grebe, Carsten Vogt Fachhochschule Köln, Institut für Nachrichtentechnik

Dennis Juchem, Andreas Grebe, Carsten Vogt Fachhochschule Köln, Institut für Nachrichtentechnik Dennis Juchem, Andreas Grebe, Carsten Vogt Fachhochschule Köln, Institut für Nachrichtentechnik Inhalt 1) Einführung 2) Prozess zur Evaluierung von Beschreibungssprachen 3) 4) Systemarchitektur 5) Ausblick

Mehr

Webtechnologien. Stunde 6 ( ) - HTTP - HTML - Servlets - AJAX. Verschoben haben wir - JSP (Java Server Pages) - JSF (Java Server Faces)

Webtechnologien. Stunde 6 ( ) - HTTP - HTML - Servlets - AJAX. Verschoben haben wir - JSP (Java Server Pages) - JSF (Java Server Faces) Stunde 6 (2006-05-26) Webtechnologien - HTTP - HTML - Servlets - AJAX Verschoben haben wir - JSP (Java Server Pages) - JSF (Java Server Faces) Gemäß Ihres Wunsches verschieben wir die Stunden vom 30. Juni

Mehr

Containerformat Spezifikation

Containerformat Spezifikation Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...

Mehr

Web-Sevices : WSDL Entwicklung von Web-Anwendungen

Web-Sevices : WSDL Entwicklung von Web-Anwendungen Web-Sevices : WSDL Entwicklung von Web-Anwendungen Axel Reusch : ar047 MIB page 1 : 50 Agenda! Allgemeines! Prinzip! Anwendung! Details! WSDL und SOAP! Beispiel mit Java! Erweiterungen! Vorteile! Nachteile!

Mehr