Zugangsmechanismen beim Cloud-Computing

Größe: px
Ab Seite anzeigen:

Download "Zugangsmechanismen beim Cloud-Computing"

Transkript

1 Zugangsmechanismen beim Cloud-Computing SOAP-/RESTful-Webservices und Service- Orientierte Architekturen Semesterbegleitende Prüfungsleistung im Fach: Kommunikations- und Rechnernetze 2 an der Fachhochschule Dortmund im Fachbereich 04 im Studiengang Informatik Autor: Andreas Beckers Matrikel-Nr: Erstprüfer: Prof. Dr. Eren Datum: 27. Januar 2011

2 Inhalt II Inhalt Inhalt... II 1 Einleitung Was ist Cloud-Computing Motivation Zielsetzung Service-Orientierte Architekturen Definition SOA meets Cloud-Computing Zugangsmechanismen Webservice Allgemein SOAP-Webservices WSDL - Webservice Description Language SOAP RESTful-Webservices SOAP oder REST Umsetzungsmöglichkeiten SOAP-Webservices mit WSDL-Datei RESTful-Webservices Alternative Umsetzungen durch APIs und Frameworks Fazit Abbildungsverzeichnis Codeausschnittverzeichnis Literaturverzeichnis... 16

3 1 Einleitung 1 1 Einleitung 1.1 Was ist Cloud-Computing Der Begriff Cloud ergibt sich, historisch gesehen, aus Diagrammen von Computernetzwerken. Mit einer Wolke wird typischerweise die Schicht zwischen zwei Netzwerken dargestellt, die miteinander verbunden sind. Die Wolke stellt das unbekannte Netz des Providers dar, meistens das Internet. Hinter dem Begriff Cloud-Computing verbirgt sich ein großes, komplexes und unbekanntes System also die Wolke die, wie ein normaler Rechner, bestimmte Aufgaben übernimmt. Damit ist ein riesiges zusammengeschlossenes Rechnersystem gemeint, das eine enorme Rechenleistung und eine hohe Verfügbarkeit gewährleistet. Wenn einer der tausenden Rechner ausfällt, bemerkt der eigentliche Nutzer davon nichts. Das Management übernimmt der Anbieter, letztendlich soll der Anwender ja nur die unbekannte Wolke vor Augen haben. Eine weitere, wichtige Eigenschaft für den Endnutzer ist die Skalierbarkeit. Als bekanntes Beispiel dient hier das Weihnachtsgeschäft. Ein Web-Shop wird in der Regel passabel genutzt; es werden nicht viele Ressourcen benötigt. Liegt dieser Shop bei einem Cloud-Anbieter, wird das System auf entsprechend nur das Nötigste gedrosselt. Der Shop-Besitzer muss dementsprechend wenig zahlen. Zu Weihnachten jedoch, wo der Kaufandrang enorm steigt, werden durch den Cloud- Anbieter die Computer-Ressourcen so angepasst, dass die Performance des Systems jederzeit gut ist. Würde der Shop-Anbieter die Anwendung selbst hosten, müsste er entweder das ganze Jahr über starke, teure Hardware und eine schnelle Leitung bezahlen, wobei nur ein Teil benutzt wird, oder aber er hätte zu Weihnachten ein Problem, weil die Auslastung zu hoch ist. Ein Nutzer könnte die Anwendung nicht adäquat einsetzen. 1.2 Motivation Zurzeit ist Cloud-Computing zum richtigen Hype geworden. Jeder will sich damit beschäftigen und sucht nach einem angemessenen Szenario für seine Anwendung. Wie wird Cloud-Computing aber technisch umgesetzt? Über welchem Weg kommuniziere ich mit einem Cloud-Anbieter? In dieser Arbeit wird auf diese Fragen näher eingegangen. 1.3 Zielsetzung Zu allererst werden in Kapitel 2 die Begriffe Cloud-Computing und Service- Orientierte Architektur miteinander verglichen und unterschieden. Sie unterscheiden sich sehr, wobei sie aber einiges gemeinsam haben.

4 1 Einleitung 2 Anschließend werden die beiden gängigen Zugangsmechanismen SOAP- und RESTful-Webservices aufgezeigt, nachdem nochmal allgemein das Thema Webservices erläutert wird. In Kapitel 3.2 wird das Austauschformat SOAP vorgestellt, und wie man SOAP-basierte Webservices mittels der Webservice Description Language entwirft. Das Ganze wird mit einem Beispiel aus der Amazon Elastic Computing Cloud abgerundet. Dieses Beispiel wird auch in Kapitel 3.3 fortgeführt, in dem auf die REST- Technologie eingegangen wird. Amazon bietet nämlich beide Zugangsmechanismen für ihre Cloud an. In Kapitel 3.4 werden die beiden zuvor erläuterten Webservice Techniken verglichen und sollen einen Überblick bieten, welche der beiden denn nun für die eigene Anwendung in Frage kommt. Im anschließenden Kapitel wird erläutert, wie diese Techniken für die eigene Anwendung umgesetzt werden können.

5 2 Service-Orientierte Architekturen 3 2 Service-Orientierte Architekturen 2.1 Definition Eine Service-orientierte Architektur ist im eigentlichen Sinne gar keine Architektur sondern eher ein Paradigma oder ein bestimmter Ansatz, der beim Entwurf einer Software-Architektur hilft, konkrete Entscheidungen zu treffen. Letztlich muss SOA, wie jedes IT-Konzept, helfen, fachliche Anforderungen besser zu erfüllen. Um qualitative Lösungen rechtzeitig zu liefern, ist Flexibilität erforderlich. Damit Flexibilität nicht zu Chaos führt, braucht man aber eine klare Organisation, klare Rollen und klare Prozesse. Aus diesem Grund hat SOA auch mit all diesen nichttechnischen Aspekten zu tun. [Josu08, S. 17] In konzeptioneller Sicht gibt es Anbieter, die bestimmte Services zur Verfügung stellen, Konsumenten, die diese beanspruchen wollen und schließlich eine Registrierung, bei der Services angemeldet und erfragt werden können. In Abbildung 1 wird dieser Zusammenhang veranschaulicht. Abbildung 1: Konzept einer SOA Der Anbieter veröffentlicht seinen Service zum Beispiel durch eine WSDL-Datei in der Registrierung. Der Konsument stellt eine Anfrage und erhält schließlich diese WSDL-Datei, mit der er mittels SOAP oder REST Zugriff auf den Service bekommt. Auf die Themen WSDL, SOAP und REST wird in Kapitel 3 näher eingegangen. 2.2 SOA meets Cloud-Computing Eine SOA stellt Policen, Prinzipien und ein Framework bereit und illustriert somit, wie bestimmte Services von Enterprise Anwendungen genutzt werden können um bestimmten fachlichen Nutzen zu erhalten. Services in einer SOA dienen bestimmten Geschäftsfällen wie zum Beispiel das Aktualisieren eines Service-Level- Agreement zwischen dem Unternehmen und einem Kunden. Rein technische

6 2 Service-Orientierte Architekturen 4 Funktionalitäten, wie das Updaten eines Eintrags in der Datenbank, sind jedoch keine Services im Sinne einer SOA. Auf einem höheren Level gesehen kann SOA als verbessertes Verwaltungsmanagement für Geschäftsfälle betrachtet werden. Dieses Konzept erlaubt uns, Geschäftsprozesse feingranular aufzuteilen, diese als Services bestimmten Anwendungen zur Verfügung zu stellen und somit eine Wiederverwendung von vorhandenen Anwendungsfällen zu ermöglichen. Der Vergleich zwischen SOA und Cloud-Computing kann in erster Sicht ein wenig verwirrend sein. Beides ist sich sehr ähnlich aber dennoch gibt es grundlegende Unterschiede. Webservices einer SOA werden von Unternehmensanwendungen für spezielle andere Applikationen angeboten wohingegen Services des Cloud- Computing Anbieters einem Endkunden angeboten werden um zum Beispiel Software oder Hardware zur Verfügung zu stellen. Cloud-Service Provider wie Amazon oder Force.com haben für die Architektur ihrer Services nutzen aus dem SOA-Konzept gezogen und um einige Dinge verbessert. Die angebotenen Dienste werden in die für den Kunden unergründliche Wolke gesteckt und können erweitert und genutzt werden, wann immer ein Bedarf danach besteht. In einer SOA hingegen ist das erweitern von Services schwierig und ein teures Vorgehen. [Ritt10, S ]

7 3 Zugangsmechanismen 5 3 Zugangsmechanismen 3.1 Webservice Allgemein Ein Webservice stellt die Form eines Nachrichtenaustauschs zwischen zwei Systemen dar. Mit dem Wort Web ist hierbei gemeint, dass als Übertragungsprotokoll das Hypertext Transfer Protokoll (HTTP), das auch für Zugriffe auf Webseiten zuständig ist, eingesetzt wird. Der Vorteil gegenüber anderen Mechanismen wie RPC, RMI und CORBA ist, dass keine weiteren Firewallregeln im Unternehmen definiert werden müssen, da aufgrund des HTTP-Ports 80 die Verbindungen üblicherweise durchgelassen werden. Die Übertragung der Daten über HTTP wird durch SOAP oder REST geregelt. Diese beiden Mechanismen werden in Kapitel 3.2 und Kapitel 3.3 erläutert. 3.2 SOAP-Webservices Die erste Möglichkeit, Zugriff zu Cloud-Computing Anbieter zu bekommen, ist der SOAP Webservice. Grundlegend dafür ist die WSDL-Datei, die die einzelnen Services auflistet und beschreibt, welche Parameter und Rückgabewerte die einzelnen Services besitzen. In Kapitel wird auf den Aufbau der WSDL-Datei eingegangen. In Kapitel wird der SOAP-Aufbau erläutert und anhand eines Beispiels gezeigt, wie ein neues Image (AMI) in der Amazon EC2 angelegt werden kann WSDL - Webservice Description Language WSDL steht für Web-Services Description Language und stellt die Grundlage der SOAP-Webservices dar. Mit ihr kann auf standardisiertem Wege die Schnittstelle zwischen Service-Anbieter und Konsument definiert werden. WSDL wird durch die Spezifikation des World Wide Web Consortium (W3C) definiert. Zurzeit existieren zwei wesentliche Versionen. Die am weitesten verbreitete und in diversen Werkzeugen und Technologien eingesetzte Version ist 1.1. Eine neuere Version, die sich zum Zeitpunkt dieser Arbeit aber noch nicht richtig durchsetzen konnte, ist die Version 2.0. Diese verfügt über einige Verbesserungen und Erweiterungen. WSDL-Dokumente sind grundsätzlich bottom-up aufgebaut. Das heißt, dass die konkreten Eigenschaften am Ende aufgeführt werden und die benötigten Details darüber stehen. In Abbildung 2 ist der Aufbau dargestellt.

8 3 Zugangsmechanismen 6 Abbildung 2: Aufbau eines WSDL1.1 Dokuments (vgl. [Josu08, S. 262]) Mit service und port wird der Service durch die genaue Adresse in Form einer URL mit dazugehörigem Port angegeben. Durch das binding werden dann die verschiedenen Operationen an den Service gebunden. Des Weiteren wird hier das genaue Übertragungsprotokoll festgelegt. Innerhalb des porttype wird die Verknüpfung zwischen Operationen und Requestund Responseparametern hergestellt. Mit message können schließlich allgemeine Datenpakete deklariert werden, die durch types mit Hilfe der XML-Schema Spezifikation exakt beschrieben werden. Hier werden einzelne Attribute benannt, die Häufigkeit des Auftretens sowie die Variablentypen. Es besteht auch die Möglichkeit, die XML-Schema Typenspezifikation auszulagern und innerhalb des WSDL-Dokuments zu importieren SOAP Die Spezifikation von SOAP (Simple Object Access Protocol) beschreibt in erster Linie den Aufbau und das Format der Nachrichten, die bei einem Service-Aufruf zwischen Konsument und Serviceprovider ausgetauscht werden. Die zu übertragenden Daten werden in einen speziellen Umschlag eingebettet, wie in Abbildung 3 zu sehen ist. class SOAP SOAP-Envelope SOAP-Header Soap-Body Abbildung 3: Aufbau einer SOAP-Nachricht Dabei wird innerhalb eines Umschlags (soap:envelope) ein Header (soap:header) und ein Body (soap:body) eingefügt. Syntaktisch wird das Austauschformat mit Hilfe

9 3 Zugangsmechanismen 7 der Extensible Markup Language (XML) beschrieben. In Codeausschnitt 1 ist eine leere Nachricht im XML-Format dargestellt. <?xml version="1.0"?> <soapenv:envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> <soapenv:header> </soapenv:header> <soapenv:body> </soapenv:body> </soapenv:envelope> Codeausschnitt 1: Beispiel einer leeren SOAP-Nachricht Als praktisches Beispiel wird in Codeausschnitt 2 eine SOAP-Request Nachricht aufgezeigt, die zum Anlegen eines neuen Images in der Amazon Elastic Compute Cloud dient. <?xml version="1.0"?> <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://ec2.amazonaws.com/doc/ /"> <soapenv:header/> <soapenv:body> <ns:createimage> <ns:instanceid>i-10a64379</ns:instanceid> <ns:name>standard-web-server-v1.0</ns:name> <ns:description>standard Web Server v1.0</ns:description> <ns:noreboot>false</ns:noreboot> </ns:createimage> </soapenv:body> </soapenv:envelope> Codeausschnitt 2: SOAP-Request zum Anlegen eines Images in der Amazon EC2 Übermittelte Werte sind hier unter anderem der Name des Images, eine eindeutige ID und eine optionale Beschreibung. Der Aufbau der Nachricht lässt sich aus der offiziellen WSDL-Datei von Amazon ableiten [Amaz10]. 3.3 RESTful-Webservices Neben SOAP gibt es noch die REST-Webservices. REST steht für Representational State Transfer. Architekturen, die REST-Webservices nutzen werden auch als RESTful bezeichnet. Die Prinzipien dieser Technik werden schon längst, wenn auch vielleicht nicht bekannt, im Internet eingesetzt. Ressourcen und Methoden werden über einen Uniform Resource Identifier (URI) angesprochen, also quasi wie der Aufruf einer Webseite. Dabei kommen die Standard HTTP-Methoden GET, POST, PUT und DELETE zum Einsatz. REST-Webservices können als Kollektion von Ressourcen angesehen werden. Jede dieser Ressourcen ist durch eine Basis URI zu erreichen, gefolgt von einer eindeutigen ID, die die gewünschte Ressource identifiziert. Ein Web-Service, der eine Liste von Autos bereitstellt, könnte folgendermaßen aussehen: Wenn dieser Service das Autokennzeichen als eindeutige ID nutzt, könnten die Informationen über ein bestimmtes Auto folgendermaßen abgerufen werden:

10 3 Zugangsmechanismen 8 Für ein komplexeres Beispiel wird der SOAP Amazon EC2 Service zum Anlegen eines neuen AMI aus dem vorherigem Kapitel als REST-Lösung in Codeausschnitt 3 dargestellt: https://ec2.amazonaws.com/?action=createimage &Description=Standard+Web+Server+v1.0 &InstanceId=i-10a64379 &Name=standard-web-server-v1.0 &NoReboot=false Codeausschnitt 3: REST-Anfrage zum Anlegen eines AMI in der Amazon EC2 Wie zu sehen ist, ist der Service-Aufruf wie ein Webseitenaufruf aufgebaut. Benötigte Werte werden als Parameter angefügt. Die Antwort auf ein REST- Request ist, ebenfalls im XML-Format oder auch in JSON, aber nicht eingepackt in einem SOAP-Umschlag, sondern lediglich mit einem standardisierten HTTP- Header. Die Antwort auf die CreateImage-Anfrage könnte folgendermaßen aussehen: HTTP/ OK x-amz-id-2: id x-amz-request-id: request_id Date: date Content-Type: type Content-Length: length Connection: close Server: AmazonEC2 <CreateImageResponse xmlns="http://ec2.amazonaws.com/doc/ /"> <requestid>59dbff89-35bd-4eac-99ed-be587example</requestid> <imageid>ami-4fa54026</imageid> </CreateImageResponse> Codeausschnitt 4: Beispiel Response auf REST-Anfrage von Amazon EC2 Dieses Beispiel stammt aus der Amazon EC2 API Referenz [Ama10]. Noch fehlt es an einem standardisierten Deskriptor für RESTful Webservices. Es existieren aber bereits einige Ansätze. Einer ist zum Beispiel die Web Application Description Language (WADL), konnte sich aber bisher noch nicht klar durchsetzen. Eine weitere Möglichkeit ist die WSDL-Datei in der Version 2.0, die, wenn es von dem Web-Service Framework unterstützt wird, die Services hinreichend beschreibt [Rub07]. 3.4 SOAP oder REST Die Frage, welchen Webservice-Mechanismus man einsetzen sollte, kann nicht pauschal beantwortet werden. Zuallererst sollte evaluiert werden, welche Methoden von welchem Cloud-Anbieter unterstützt werden. Falls aber zum Beispiel ein Anbieter beide Möglichkeiten anbietet, wie es zum Beispiel die Amazon Elastic Computing Cloud macht, ist eine genauere Überlegung sinnvoll. SOAP-Webservices sind weit verbreitetet und es gibt zahlreiche Tools und Frameworks, um diese zu designen und umzusetzen. Des Weiteren gibt es viele Beispiele, die einem die eigene Umsetzung erleichtern können. Dennoch wurde

11 3 Zugangsmechanismen 9 diese Technologie von REST überholt. REST ist vor allem leichter zu benutzen, denn der Entwickler muss sich mit weniger Protokollen auseinandersetzen. Des Weiteren muss zum Nutzen der Services keine individueller Client installiert werden. Der Aufruf von REST ist ein normaler http-aufruf, wie auch der Aufruf einer Web- Seite [Mark10, S. 50]. Aber auch Performance-Vorteile sind durch REST gegeben. Der Server, der die Webservices zur Verfügung stellt, hat durch REST eine geringere Last als wenn er SOAP-Webservices anbieten würde. Die Antwortzeit auf eine Anfrage ist ebenfalls schneller [Ritt10, S. 199 f]. Anhand der Nutzungsstatistiken der Amazon Elastic Computing Cloud kann man feststellen, dass auch die Entwickler die Vorteile von REST ernst nehmen. 85% der Webservice Aufrufe dort geschehen über REST [ORei03].

12 4 Umsetzungsmöglichkeiten 10 4 Umsetzungsmöglichkeiten 4.1 SOAP-Webservices mit WSDL-Datei Um auf SOAP-Webservices zugreifen zu können, ist die WSDL-Datei des Cloud- Anbieters notwendig. Um nun aus der XML-basierten Datei einen Aufruf zu starten, ist es notwendig, sich sogenannte Client-Stubs oder auch Artefakte zu erzeugen. Diese Stubs sind gewöhnliche Klassen, die die Informationen, wie Datentypen und Services, in entsprechenden Klassen und Methoden aufteilen. Um solche Klassen zu bekommen, bedarf es einem Code-Generator. Über die Kommandozeile oder aber auch über Build-Skripte werden schließlich durch Angabe der WSDL-Datei diese Stubs erzeugt. Diese Code-Generatoren sind durch verschiedene Frameworks umgesetzt worden. Im Java Bereich sind die bekanntesten Vertreter Apache Axis [Axis10] und JAX-WS (Java API for XML-Web Services mit Generator wsimport). Im.net Bereich ist bereits ein Generator enthalten (wsdl.exe). Am Beispiel des Apache Axis2 Frameworks wird nun erläutert, wie der oben bereits erwähnte Service createimage() der Amazon EC2 implementiert werden kann. Mit Hilfe des Generators müssen zuerst die Client-Stubs aus der WSDL-Datei erzeugt werden. Dazu muss die WSDL-Datei lokal gespeichert werden und mit dem wsdl2java-generator ausgeführt werden. In Codeausschnitt 5 ist der notwendige Kommandozeilenaufruf zu sehen. wsdl2java s l java d xmlbeans o c:/stubs uri AmazonEC2.wsdl Codeausschnitt 5: Generatoraufruf zum Erzeugen der SOAP Client-Stubs Als Parameter werden die WSDL-Datei angegeben, die Programmiersprache, das Data-Binding Framework und schließlich den Pfad, wohin die Dateien gespeichert werden sollen. Das Data-Binding Framework bestimmt die Art und Weise, wie XML- Daten zu Datenobjekten konvertiert werden bzw. andersrum. Zusätzlich kann mit dem Parameter t auch ein JUnit Test erstellt werden. Die nun erzeugten Klassen können in das eigene Projekt eingebunden werden. Zusätzlich müssen noch die Libraries des Apache Frameworks in den Classpath hinzugefügt werden. Im Codeausschnitt 6 ist zu sehen, wie mit den generierten Klassen der Serviceaufruf implementiert wird. // Stub zum Aufruf der Services AmazonEC2Stub stub = new AmazonEC2Stub(); // Vorbereiten des Aufrufs (Request erstellen) CreateImageDocument createimagerequest = CreateImageDocument.Factory.newInstance(); CreateImageType data = createimagerequest.addnewcreateimage(); // Requestdaten füllen data.setdescription("standard Web Server v1.0"); data.setinstanceid("i-10a64379"); data.setname("standard-web-server-v1.0");

13 4 Umsetzungsmöglichkeiten 11 data.setnoreboot(false); // Aufruf des Services und extrahieren der Daten CreateImageResponseDocument response = stub.createimage(createimagerequest); CreateImageResponseType responsedata = response.getcreateimageresponse(); System.out.println( "Image ID : " + responsedata.getimageid() ); System.out.println( "Request ID: " + responsedata.getrequestid() ); Codeausschnitt 6: Aufruf des SOAP-Services mittels der generierten Klassen von Axis2 Zuerst muss ein stub initialisiert werden, über den die eigentlichen Services, die in der WSDL-Datei definiert wurden, aufgerufen werden können. Die benötigten Parameter (Requestparameter) werden in für jeden Service generierte Datentypen gekapselt (hier: CreateImageType). Ebenfalls für den Rückgabewert des entfernten Methodenaufrufs wurde ein eigener Datentyp generiert, der schließlich zur Weiterverarbeitung ausgelesen werden kann. Diese Vorgehensweise ist praktisch für alle Cloud-Anbieter gleich, die SOAP- Webservices durch eine WSDL-Datei bereitstellen. Die WSDL-Dateien müssen konform aufgebaut sein. Das einzige, was sich zwischen den Anbietern ändert, sind die Servicenamen, die Request und Responseparameter sowie natürlich die unterschiedlichen Fachlichkeiten, die durch die Services erreicht werden sollen. 4.2 RESTful-Webservices Auch für RESTful-Webservices gibt es mehrere Implementierungsmöglichkeiten. Da ein Service wie eine Website zu erreichen ist, kann zum Beispiel in der eigenen Anwendung ein HTTP-Aufruf mit der gewünschte URL umgesetzt werden. Allerdings muss die erhaltene Antwort selbst geparst werden, um an benötigte Informationen zu gelangen. Alternativen stellen wieder diverse Frameworks dar. Eine davon ist zum Beispiel Jersey, die Open-Source Implementierung von JAX-RS [Jers10]. Zum besseren Verständnis, wie dieses Framework eingesetzt werden kann, wird im Codeausschnitt 7 dargestellt, wie auf den Amazon Service RESTful zugegriffen wird. Client client = Client.create(); // URL des WebServices WebResource wr = client.resource("https://ec2.amazonaws.com"); // Parameter für WebService MultivaluedMap< String, String > params = new MultivaluedMapImpl(); params.add("action", "CreateImage"); params.add("description", "Standard Web Server v1.0"); params.add("instanceid", "i-10a64379"); params.add("name", "standard-web-server-v1.0"); params.add("noreboot", "false"); CreateImageResponse response = wr.queryparams(params).accept(mediatype.application_xml_type).get(new GenericType< CreateImageResponse >() {}); //Ergebnis ausgeben System.out.println("Request ID: " response.getrequestid()); System.out.println("Image ID: " response.getimageid()); Codeausschnitt 7: RESTful Zugriff mittels Jersey JAX-RS Implementierung

14 4 Umsetzungsmöglichkeiten 12 Ähnlich wie bei der Implementierung des SOAP-Webservices wird zuerst ein Client- Stub initialisiert über den dann später der Service Aufruf erfolgt. Dem Client von Jersey muss allerdings die Web Ressource des REST-Services bekanntgegeben werden. Dazu wird die URI angegeben sowie die nötigen Parameter, die der Cloud- Anbieter durch seine API vorgibt. Der Response Datentyp ist eine selbst erstellte Klasse, die die definierte Antwort des Service-Anbieters repräsentiert. Durch die wird das Mapping deklariert. Diese Notation gebührt der Java-Erweiterung JAXB, die für das sogenannte Unmarshalling von XML zu normalen Objekten zuständig ist. Als Beispiel ist die Response Klasse des CreateImage-Services ohne Getter-Methoden in Codeausschnitt 8 zu public class CreateImageResponse { private String requestid; private String imageid; Codeausschnitt 8: XML-Mapper für den Response eines REST-Aufrufs durch Jersey 4.3 Alternative Umsetzungen durch APIs und Frameworks Cloud-Anbieter wie Salesforce.com oder Amazon bieten Zugriff zu einer WSDL- Datei oder stellen HTTP-basierte REST-Webservices bereit, um ihre Lösungen dynamisch konfigurierbar zu machen. Bei Anbietern wie Google Apps Engine oder Windows Azure können ebenfalls (bei Azure) eigens entwickelte Applikationen gehostet werden. Darin können dann Services nach dem SOA-Prinzip bereitgestellt werden, die gewünschte Fachlichkeiten übernehmen und nach dem Cloud- Computing Prinzip effizient und skalierbar aufgerufen werden können. Bei diesem Szenario ist es aber einem selbst überlassen, den Webservice, diesmal als Server oder Codeseitig als Server-Skeleton, zu implementieren. Dazu werden oftmals eigene Schnittstellen oder aber auch Frameworks von Drittanbietern angeboten. Restlet für Google Apps Engine (www.restlet.org) Ein Beispiel wäre Restlet für die Google Apps Engine (GAE). Applikationen für diese Cloud haben nur einen eingeschränkten Zugriff auf Bibliotheken. Somit sind nur die Standard Java Bibliotheken verfügbar. Restlet als jar-bibliothek ergänzt die eigene Anwendung um REST-Funktionalität, so dass von der Cloud aus, als Client, weitere Services genutzt werden können, oder aber in der Cloud ein REST-Server eingerichtet wird, der es eben ermöglicht, aus anderen Anwendungen auf die GAE- Applikation in der Cloud zuzugreifen, um bestimmte Fachlichkeiten hochskalierbar durchzuführen. Microsoft.WindowsAzure.StorageClient [MsCe10] Der StorageClient der Windows Azure SDK ist eine vorgefertigte Bibliothek die es dem Entwickler vereinfacht, die REST-Operationen der Storage Cloud zu nutzen. Dieser Client abstrahiert die Schnittstelle in dem er ein gekapseltes closed-source Interface zur Verfügung stellt. Diese Lösung versteckt die komplexeren inneren Abläufe der Web-Services, die einem Entwickler meistens nicht interessieren. Amazon Web Services (AWS) Java /.Net / PHP Library [AWSAPI10] Auch Amazon stellt eine vorgefertigte Bibliothek zur Verfügung, die es ermöglicht, auf dessen Services zuzugreifen und hebt die Komplexität auf, selbst den Zugriff zu den Web Services erstellen zu müssen.

15 5 Fazit 13 5 Fazit In dieser Arbeit wurde, nachdem im kleineren Umfang Cloud-Computing erläutert wurde, dieser Ansatz mit der Service-Orientierten Architektur verglichen. Es hat sich herausgestellt, dass sich beide Methoden sehr ähneln, sich aber dennoch grundlegend differenzieren. Eine SOA dient dem feingranularen Aufteilen von Geschäftsprozessen, die schließlich wiederverwendbar sind und von anderen Anwendungen genutzt werden können. Cloud-Computing hingegen wird genutzt, um Software, Hardware oder Betriebssysteme hochverfügbar und skalierbar zur Verfügung gestellt zu bekommen. Schließlich wurden die beiden gängigsten Zugangsmechanismen SOAP- und RESTful-Webservices vorgestellt. Bei SOAP-Webservices spielt die WSDL-Datei die entscheidende Rolle, da darin alle Services und Austauschformate deklariert werden. Die eigentlichen Nachrichten werden im XML-Format innerhalb eines SOAP-Umschlags versendet. RESTful-Webservices werden über die Standard- HTTP Messages POST, PUT, GET, und DELETE ausgeführt. Angesprochen werden sie, wie bei einem Webseitenaufruf, durch ihre Uniform Resource Identifier. In einem anschließenden Vergleich zwischen SOAP und REST hat sich herausgestellt, dass die RESTful-Webservices bei den Entwicklern aufgrund der leichteren Bedienung und ihrer effizienteren Arbeitsweise beliebter sind und bei einer modernen Anwendungen vorzuziehen sind, wenn der gewünschte Cloud- Anbieter diesen Mechanismus unterstützt. Mit der Hilfestellung, wie solche Web-Services selbst implementiert und integriert werden können, wird ein näheres, praktischeres Verständnis für diese Thematik vorgezeigt.

16 Abbildungsverzeichnis 14 Abbildungsverzeichnis Abbildung 1: Konzept einer SOA... 3 Abbildung 2: Aufbau eines WSDL1.1 Dokuments (vgl. [Josu08, S. 262])... 6 Abbildung 3: Aufbau einer SOAP-Nachricht... 6

17 Codeausschnittverzeichnis 15 Codeausschnittverzeichnis Codeausschnitt 1: Beispiel einer leeren SOAP-Nachricht... 7 Codeausschnitt 2: SOAP-Request zum Anlegen eines Images in der Amazon EC Codeausschnitt 3: REST-Anfrage zum Anlegen eines AMI in der Amazon EC Codeausschnitt 4: Beispiel Response auf REST-Anfrage von Amazon EC Codeausschnitt 5: Generatoraufruf zum Erzeugen der SOAP Client-Stubs Codeausschnitt 6: Aufruf des SOAP-Services mittels der generierten Klassen von Axis Codeausschnitt 7: RESTful Zugriff mittels Jersey JAX-RS Implementierung Codeausschnitt 8: XML-Mapper für den Response eines REST-Aufrufs durch Jersey... 12

18 Literaturverzeichnis 16 Literaturverzeichnis [Josu08] Nicolai Josuttis: SOA in der Praxis (dpunkt.verlag, Heidelberg, 2008). [Mark10] Eric A. Marks, Bob Lozano: Executive's Guide to Cloud Computing (John Wiley & Sons, Inc., New Jersey, 2010). [Ritt10] John W. Rittinghouse, James F. Ransome: Cloud Computing - Implementation, Management, and Security (CRC Press, Boca Raton, 2010). Onlinequellen [Ama10] Amazon Web Services LLC: Amazon Elastic Compute Cloud API Reference (2010) [http://docs.amazonwebservices.com/awsec2/latest/apireference/apireference-query- CreateImage.html] (Zugriff: 4. Januar 2011). [Amaz10] Amazon: Amazon EC2 WSDL-Datei () [http://s3.amazonaws.com/ec2-downloads/ec2.wsdl] (Zugriff: ). [AWSAPI10] amazon web services: AWS SDK for Java (2010) [http://aws.amazon.com/sdkforjava/] (Zugriff: 27. Januar 2011). [Axis10] The Apache Software Foundation: Apache Axis2 (2010) [http://axis.apache.org/axis2/java/core/] (Zugriff: Januar 11). [Baye02] Thomas Bayer: OiO - REST Web Services (2002) [http://www.oio.de/public/xml/rest-webservices.htm] (Zugriff: 4. Januar 2011). [Jers10] Java.net: Jersey 1.4 User Guide (2010) [http://jersey.java.net/nonav/documentation/latest/user-guide.html#client-api] (Zugriff: 12. Januar 2011). [MsCe10] Ms Certs.net: Windows Azure Storage : REST API (part 2) - Storage Client APIs (2010) [http://mscerts.net/windows/windows%20azure%20storage%20%20%20rest%20api%20%28part%2 02%29%20-%20storage%20client%20apis.aspx] (Zugriff: Januar 12). [ORei03] Tim O'Reilly: REST vs. SOAP at Amazon (2003) [http://www.oreillynet.com/pub/wlg/3005] (Zugriff: 4. Januar 2011). [Rub07] Daniel Rubio: WADL: The REST answer to WSDL (2007) [http://searchsoa.techtarget.com/tip/wadl-the-rest-answer-to-wsdl] (Zugriff: 4. Januar 2011). [Stei07] Thomas Steiner: Automatic Multi Language Program Library Generation for REST APIs (2007) [https://docs.google.com/doc?id=dgdcn6h3_38fz2vn5] (Zugriff: ).

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 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

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

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

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

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

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

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 sawielan@student.ethz.ch ETH Zürich Seminar Das Internet der Dinge Historisches Tim Berners-Lee Erster Web-Server Bildquelle: Wikimedia

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

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

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

Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm. Web Services. Boto Bako

Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm. Web Services. Boto Bako Hauptseminar Internetdienste Prof. F. Schweiggert Sommersemester 2004 Universität Ulm Web Services Boto Bako Inhaltsverzeichnis 1.Einführung und Motivation...3 2.Verwendete Standards...4 2.1.SOAP...5 2.2.WSDL...6

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] Manfred.Steyer@SoftwareArchitekt.at

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

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

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

Mehr

Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht

Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht Universität der Bundeswehr München Mario Golling und Michael Kretzschmar Fakultät für Informatik E-Mail: mario.golling@unibw.de

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

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

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

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

VVA Webservice Online Lieferbarkeits-Abfrage

VVA Webservice Online Lieferbarkeits-Abfrage Version 1.0 Dateiname VVA_OLA_Schnittstellenbeschreibung_2012.docx Erstellt am 30.05.2010 Seitenanzahl 5 arvato media GmbH Historie der Dokumentversionen Version Datum Autor Änderungsgrund / Bemerkungen

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

.NET-Networking 2 Windows Communication Foundation

.NET-Networking 2 Windows Communication Foundation .NET-Networking 2 Windows Communication Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Fabian Raab Institut für Informatik Software & Systems Engineering Agenda Grundproblem Bestandteile

Mehr

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen?

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? Großer Beleg Christian Wurbs Zwischenbericht http://www.inf.tu-dresden.de/~cw6 cw6@inf.tu-dresden.de Überblick 2 Aufgabenstellung CORBA

Mehr

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

Auszug aus JAX-WS Folien

Auszug aus JAX-WS Folien Auszug aus JAXWS Folien Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen

Mehr

REST-basierte Web-Services mit PHP (1)

REST-basierte Web-Services mit PHP (1) REST-basierte Web-Services mit PHP (1) REST nutzt direkt die HTTP-Operationen Daher ist es (vgl. SOAP) einfacher, einen REST-basierten Webservice direkt mit PHP zu implementieren. Einige PHP-Frameworks,

Mehr

REST: Eine leichtgewichtige und einfachere Alternative zu Web Services. W3L AG info@w3l.de

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 info@w3l.de 2009 2 Inhalt Einführung Grundprinzipien der REST-Architektur Beispiel Entwurf von REST-Anwendungen REST mit

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

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

Inhaltsverzeichnis. Open-Xchange Authentication & Sessionhandling

Inhaltsverzeichnis. Open-Xchange Authentication & Sessionhandling Open-Xchange Authentication & Sessionhandling Version Date Author Changes 1.0 28.08.2006 Stephan Martin Initiale Version 1.1 29.08.2006 Marcus Klein Details Authentication via JSON 1.2 04.09.2006 Stephan

Mehr

Termin 4: Web Services Computing

Termin 4: Web Services Computing Arbeitsgruppe Übung Netzbasierte Informationssysteme Termin 4: Web Services Computing Prof. Dr. Adrian Paschke Arbeitsgruppe Corporate Semantic Web (AG-CSW) Institut für Informatik, Freie Universität Berlin

Mehr

Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK

Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK Einführung in die Cross-Plattform Entwicklung Web Services mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Zugriff auf Web Services vertraut. Der Web Service

Mehr

Entwicklung eines interoperablen, multimedialen Teaching-File-Service: Web-Service unterstützter Wissenstransfer in der Radiologie

Entwicklung eines interoperablen, multimedialen Teaching-File-Service: Web-Service unterstützter Wissenstransfer in der Radiologie Aus dem Universitätsklinikum Benjamin Franklin der Freien Universität Berlin Institut für Medizinische Informatik, Biometrie und Epidemiologie Geschäftsführender Direktor: Prof. Dr. Thomas Tolxdorff Entwicklung

Mehr

Kapitel 5 Web-Services

Kapitel 5 Web-Services Kapitel 5: Web-Services 1 Kapitel 5 Web-Services 5.1 Web-Services Verwendung/Aufruf (Service Invocation) SOAP Beschreibung (Service Description) WSDL Repository/Verzeichnis (Service Discovery) UDDI 5.2

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

Definition Web Service

Definition Web Service Gliederung Einführung Definition Web Service Drei Schhichtenmodell Architectural Model System Model Web Service Standards SOAP WSDL UDDI Types of Web Services Programmatic Web Services Interactive Web

Mehr

Aktuelle Technologien zur Entwicklung verteilter Anwendungen RESTful Web Services mit JAX-RS

Aktuelle Technologien zur Entwicklung verteilter Anwendungen RESTful Web Services mit JAX-RS Aktuelle Technologien zur Entwicklung verteilter Anwendungen Überblick, Grundlagen und Entwicklung mit Java Gliederung A. I. Web Services II. RESTful Web Services III. Java API for RESTful Web Services

Mehr

PL/SQL Web-Services mit Oracle 11g

PL/SQL Web-Services mit Oracle 11g DOAG 2008 Konferenz 01. - 03.12.2008 Nürnberg Markus Fiegler ORDIX AG, Paderborn mf@ordix.de www.ordix.de Agenda SOA und Web-Services im Überblick Datenbank als Web-Services Provider - Alternative mit

Mehr

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE DOKUMENTATION MAAS - MONITORING AS A SERVICE DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE Dokumentation MaaS - Monitoring as a Service Inhalt 1. MaaS - Monitoring as Service... 3 1.1 Einleitung...

Mehr

WebService in Java SE und EE

WebService in Java SE und EE Schlüsselworte Java, JAX-WS, JAX-RS, JAXB, XML. Einleitung WebService in Java SE und EE Wolfgang Nast MT AG Ratingen Es werden die Mölichkeiten von WebServices in Java SE und EE, mit SOAP und REST gezeigt.

Mehr

Erfinderland Deutschland Baukasten Forschung Themenbereich: Informatik Niveau B1 CLIL-Unterrichtsmaterialien Vor dem Ausstellungsbesuch

Erfinderland Deutschland Baukasten Forschung Themenbereich: Informatik Niveau B1 CLIL-Unterrichtsmaterialien Vor dem Ausstellungsbesuch Seite 1 von 5 Erfinderland Deutschland Baukasten Forschung Themenbereich: Informatik CLIL-Unterrichtsmaterialien Vor dem Ausstellungsbesuch Aufgabe 1: Daten in der Wolke a. Seht das Bild an und tauscht

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 (goetz@buerkle.org) Übungsblatt 5: Aufgabe 4 - Webservices Institut für Angewandte Informatik und Formale Beschreibungsverfahren

Mehr

epayment Leistungen des Bundes einfach, schnell und sicher bezahlen mit Payment Eine Idee mit Zukunft 17.05.2005 1

epayment Leistungen des Bundes einfach, schnell und sicher bezahlen mit Payment Eine Idee mit Zukunft 17.05.2005 1 epayment Leistungen des Bundes einfach, schnell und sicher bezahlen mit Payment Eine Idee mit Zukunft 17.05.2005 1 Übersicht Internet eshop n... Leistungen des Bundes Rechnung Lastschrift Einzelüberweisung

Mehr

REST Grundlagen. Seminar Aktuelle Software-Engineering-Praktiken für das World Wide Web. Olga Liskin

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

PROC SOAP, PROC HTTP. Webservices und SAS. Agenda. I. Kurze Einführung zu Webservices II. Webservices und SAS 08.03.2012

PROC SOAP, PROC HTTP. Webservices und SAS. Agenda. I. Kurze Einführung zu Webservices II. Webservices und SAS 08.03.2012 PROC SOAP, PROC HTTP und der ganze REST Webservices und SAS KSFE 08. März 2012 Agenda I. Kurze Einführung zu Webservices II. Webservices und SAS 1. Webservices mit SAS konsumieren 2. Webservices mit SAS

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

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

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

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

Dokumentation zur Verwendung eines SOAP-Webservices in SAP PI

Dokumentation zur Verwendung eines SOAP-Webservices in SAP PI Betriebswirtschaftliche Anwendungen 2: Serviceorientierte Anwendungsintegration Dokumentation zur Verwendung eines SOAP-Webservices in SAP PI Umrechnung von Währungen Steffen Dorn, Sebastian Peilicke,

Mehr

Web Services - Tutorial

Web Services - Tutorial RPG als Web Service Client Mihael Schmidt 0.1 Juli 2007 2007, 2008 Mihael Schmidt All rights reserved. Table of Contents 1. Allgemeines 1 1.1 Client... 1 1.2 Anwendungsserver... 1 2. Client 2 2.1 WSDL...

Mehr

HIN Client API. Technische Schnittstelle. Version: 1.0 Datum: 01.11.2010 Status: Final

HIN Client API. Technische Schnittstelle. Version: 1.0 Datum: 01.11.2010 Status: Final HIN Client API Technische Schnittstelle Version: 1.0 Datum: 01.11.2010 Status: Final Health Info Net AG (HIN) Pflanzschulstrasse 3 8400 Winterthur support@hin.ch www.hin.ch Tel. 0848 830 740 Inhaltsverzeichnis

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

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

Azure und die Cloud. Proseminar Objektorientiertes Programmieren mit.net und C# Simon Pigat. Institut für Informatik Software & Systems Engineering

Azure und die Cloud. Proseminar Objektorientiertes Programmieren mit.net und C# Simon Pigat. Institut für Informatik Software & Systems Engineering Azure und die Cloud Proseminar Objektorientiertes Programmieren mit.net und C# Simon Pigat Institut für Informatik Software & Systems Engineering Agenda Was heißt Cloud? IaaS? PaaS? SaaS? Woraus besteht

Mehr

Rechnernetze Übung 12

Rechnernetze Übung 12 Rechnernetze Übung 12 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juli 2011 Sie kennen sicherlich sogenannte Web-Mailer, also WWW-Oberflächen über die Sie Emails lesen und vielleicht

Mehr

SOAP und WSDL in der Praxis. Wie wird SOAP/WSDL verwendet? Heutige Vorlesung. .net. und Apache Axis

SOAP und WSDL in der Praxis. Wie wird SOAP/WSDL verwendet? Heutige Vorlesung. .net. und Apache Axis Heutige Vorlesung SOAP und WSDL in der Praxis Aufbau von WSDL-Beschreibungen Protokoll-Bindungen in WSDL Google-WSDL lesen und erweitern können Vor- und Nachteile von WSDL heute Wie wird SOAP/WSDL verwendet?.net,

Mehr

SOA, Webservices und SOAP für Schnelleinsteiger

SOA, Webservices und SOAP für Schnelleinsteiger SOA, Webservices und SOAP für Schnelleinsteiger (C)opyright 2005 by Jochen Vajda Inhalt Einführung I. Was ist SOA? II. Webservices, SOAP und WSDL SOAP mit PHP5 I. Benötigte Komponenten II. Client ohne

Mehr

Grundlagen des Grid Computing

Grundlagen des Grid Computing Grundlagen des Grid Computing Webservices und Grid Computing Globus Toolkit 4 - Grundlagen ICA Joh.. Kepler Universität t Linz Eine Typische Grid-Applikation (Beispiel) VO Management Service Resource Discovery

Mehr

Java - Webapplikationen

Java - Webapplikationen Java - Webapplikationen Bestandteile (HTTP,, JSP) Aufbau (Model View Controller) Datenverwaltung (Java Beans, Sessions) Entwicklung (Projektstruktur, Sysdeoplugin für Eclipse) 17. Januar 2006 Jan Hatje

Mehr

Wolkig bis heiter. Andreas Wismann WHEN OTHERS. APEX als Drehkreuz für Web Service-Anwendungen

Wolkig bis heiter. Andreas Wismann WHEN OTHERS. APEX als Drehkreuz für Web Service-Anwendungen Wolkig bis heiter APEX als Drehkreuz für Web Service-Anwendungen Andreas Wismann WHEN OTHERS Beratung Projektmanagement Coaching rund um Oracle Application Express In APEX Informationen von "woanders"

Mehr

Web Services Einsatzmöglichkeiten für das Information Retrieval im WWW

Web Services Einsatzmöglichkeiten für das Information Retrieval im WWW Web Services Einsatzmöglichkeiten für das Information Retrieval im WWW Fabio Tosques & Philipp Mayr Frankfurt am Main, den 24. Mai 2005 27. Online-Tagung der DGI 2005 1 Überblick Datenanalyse mittels screen

Mehr

Vertiefte Grundlagen Graphentheorie

Vertiefte Grundlagen Graphentheorie Bauinformatik Vertiefte Grundlagen Graphentheorie 6. Semester 8. Übung Webservices Technische Umsetzung am Beispiel Flächenträgheitsmoment äg e e und Biegemoment e Benutzte Software ECLIPSE: Programmierumgebung

Mehr

Das eigene Kandidatenfrontend

Das eigene Kandidatenfrontend Das eigene Kandidatenfrontend THEMA: Mit dem BeeSite API zum eigenen Job Board Dr. Sascha Juchem R&D Abteilung sascha.juchem@milchundzucker.de AGENDA Mit dem BeeSite API zum eigenen Job Board 01 Einleitung

Mehr

Anleitung REST API Schneelast-Messsystem SMS

Anleitung REST API Schneelast-Messsystem SMS Anleitung REST API Schneelast-Messsystem SMS Version 2.01 REST API Schneelast-Messsystem SMS Die API (Schnittstelle) ist als sogenannter RESTful Webservice angelegt, bei dem jede Funktion über eine eindeutige

Mehr

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL Seminar E-Services WS 02/03 WSDL Web Services Description Language SES 02 - WSDL Zum Ablauf Einleitung Webservices und WSDL Grundlagen (XML - Schema und Namespaces) WSDL Syntax Beispiel Zusammenfassung

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

Zeiterfassung für Projekte. SOAP-Schnittstelle. Juli 2013 Version 4.7

Zeiterfassung für Projekte. SOAP-Schnittstelle. Juli 2013 Version 4.7 Weil Zeit Geld ist Zeiterfassung für Projekte SOAP-Schnittstelle Juli 2013 Version 4.7 provantis IT Solutions GmbH Siemensstr. 1 71254 Ditzingen Tel. +49 (0)7156/43623-0 Fax. +49 (0)7156/43623-11 zep@provantis.de

Mehr

VIVIT TQA Treffen in Köln am 18. 04. 2013. API- Programmierung und Nutzung bei HP Quality Center / ALM. Michael Oestereich IT Consultant QA

VIVIT TQA Treffen in Köln am 18. 04. 2013. API- Programmierung und Nutzung bei HP Quality Center / ALM. Michael Oestereich IT Consultant QA VIVIT TQA Treffen in Köln am 18. 04. 2013 API- Programmierung und Nutzung bei HP Quality Center / ALM Michael Oestereich IT Consultant QA Agenda Vorstellung der API- Versionen OTA- API SA- API REST- API

Mehr

SAP NetWeaver Gateway. Connectivity@SNAP 2013

SAP NetWeaver Gateway. Connectivity@SNAP 2013 SAP NetWeaver Gateway Connectivity@SNAP 2013 Neue Wege im Unternehmen Neue Geräte und Usererfahrungen Technische Innovationen in Unternehmen Wachsende Gemeinschaft an Entwicklern Ausdehnung der Geschäftsdaten

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

!"#$"%&'()*$+()',!-+.'/',

!#$%&'()*$+()',!-+.'/', Soziotechnische Informationssysteme 7. OAuth, OpenID und SAML Inhalte Motivation OAuth OpenID SAML 4(5,12316,7'.'0,!.80/6,9*$:'0+$.;.,&0$'0, 3, Grundlagen Schützenswerte Objekte Zugreifende Subjekte Authentifizierung!

Mehr

WCF Services in InfoPath 2010 nutzen

WCF Services in InfoPath 2010 nutzen WCF Services in InfoPath 2010 nutzen Abstract Gerade wenn man schreibend von InfoPath aus auf eine SQL-Server Datenbank zugreifen will, kommt man quasi um einen Web Service nicht herum. In diesem Post

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

Gefahren aus dem Internet 1 Grundwissen April 2010

Gefahren aus dem Internet 1 Grundwissen April 2010 1 Grundwissen Voraussetzungen Sie haben das Internet bereits zuhause oder an der Schule genutzt. Sie wissen, was ein Provider ist. Sie wissen, was eine URL ist. Lernziele Sie wissen, was es braucht, damit

Mehr

Internettechnologien

Internettechnologien Internettechnologien Vorlesung für Master-Studierende Geoinformation und -management Sommersemester 2011 Prof. Dr.-Ing. habil. Peter Sobe Fakultät Informatik / Mathematik Dieser Foliensatz basiert z.t.

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

E-Business Architekturen

E-Business Architekturen E-Business Architekturen Übersicht zu den Inhalten der Vorlesung Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus finden sich vielfältige Beispiele aus

Mehr

A Generic Database Web Service for the Venice Lightweight Service Grid

A Generic Database Web Service for the Venice Lightweight Service Grid A Generic Database Web Service for the Venice Lightweight Service Grid Michael Koch Bachelorarbeit Michael Koch University of Kaiserslautern, Germany Integrated Communication Systems Lab Email: m_koch2@cs.uni-kl.de

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

Stefan Kusiek BFW-Leipzig

Stefan Kusiek BFW-Leipzig Stefan Kusiek BFW-Leipzig Schnellere Geräte (CPU, HDD, RAM, ) Mehrere Geräte (CPU, HDD, RAM, ) Mehrere Geräte (Rechner, Server, ) Cluster Preiswerter????? Mindestgröße Installation Konfiguration Wartung

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

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

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Servlet Debugging

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Servlet Debugging Servlet Debugging Markus Völter, voelter@acm.org, www.voelter.de Bei der Arbeit mit Servlets kommt man recht schnell an den Punkt, an dem man Servlets vernünftig testen oder debuggen will. Mit Hilfe des

Mehr

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire

Integration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire Integration von Web Services in J EE Anwendungen mit XFire 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire univativ : = Umsetzung durch Studenten und Young Professionals.

Mehr

Friedrich. Kiltz. Java Webservices

Friedrich. Kiltz. Java Webservices Friedrich Kiltz Java Webservices Einleitung Zunächst stelle ich Ihnen die Zielsetzung des Buches und die Zielgruppe vor, also die Fragen nach dem WAS für WEN. Dann zeige ich die Struktur des Buches auf

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

... Einleitung... 15. 3... Prozessintegration und Integrationsszenarien... 127 3.1... Integrationsszenariomodelle... 128

... Einleitung... 15. 3... Prozessintegration und Integrationsszenarien... 127 3.1... Integrationsszenariomodelle... 128 ... Einleitung... 15 1... Grundlagen der Modellierung von Enterprise Services... 23 1.1... Serviceorientierte Architekturen... 26 1.1.1... Merkmale serviceorientierter Architekturen... 27 1.1.2... SOA

Mehr

Szenario 3: Service mit erweiterter Schnittstelle

Szenario 3: Service mit erweiterter Schnittstelle 2. Hintergrundverarbeitung in Android: Services und Notifications Szenarien für lokale Services Szenario 3: Service mit erweiterter Schnittstelle Ein Service bietet zusätzliche Methoden an, über die sich

Mehr

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1 Grid-Systeme Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit 07.06.2002 Grid Systeme 1 Gliederung Vorstellung verschiedener Plattformen Globus

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

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

Einführung in CouchDB

Einführung in CouchDB Einführung in CouchDB Zurücklehnen und entspannen! http://slog.io Thomas Schrader (@slogmen) 12/2010 Übersicht Bestandsaufnahme Ansatz Geschichte Technologien Features Skalierbarkeit Kurz & Gut Fazit Relationale

Mehr

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A

POIS-Praktikum 2007. Prozessimplementierung, RosettaNet PIPs 3A POIS-Praktikum 2007 Prozessimplementierung, RosettaNet PIPs 3A Manuel Blechschmidt, David Foerster, Michael Leben, Mike Nagora, Jonas Rogge, Paul Römer Gliederung 2 Einleitung Was war unsere Aufgabe? Was

Mehr

Asynchrone Webservices mit Axis 1.x in Java

Asynchrone Webservices mit Axis 1.x in Java Asynchrone Webservices mit Axis 1.x in Java 1. Übersicht Architektur Da Webservices nach relativ kurzen Timeouts Anfragen abgearbeitet haben müsse, sind komplexe Anfragen wie sie in der Bioinformatik üblich

Mehr

Apache AXIS Architektur

Apache AXIS Architektur In diesem Kapitel Um was geht s? Axis Architektur Eine Übersicht Subsysteme Message Flow Handlers und Chains (Handler Ketten) Message Contexts Adminstratives Subsystem SOAP Message Modell Subsystem Message

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr