Kurzeinstieg in Webservices mit Java Apache Axis2 Teil 1 – Was ist ein Webservice

SOA

Kurzeinstieg in Webservices mit Java Apache Axis2 Teil 1 – Was ist ein Webservice

Ein WebService ist ein Hilfmittel zur Bereitstellung eines Dienstes, welcher von externen Applikationen über eine definierte Schnittstelle angesprochen werden kann. Die vom W3C standardisierten WebServices bieten die am häufigsten verwendete technische Grundlage für ein aktuelles Buzzword der Softwaretechnik: SOA.

SOA, oder auch serviceorientierte Architektur, ermöglicht die Verfügbarkeit und Vernetzung unterschiedlicher Dienste (Programme, Datenbanken, und andere IT-gestütze Geschäftsprozesse) von unterschiedlichen Anbietern im gesamten Unternehmen oder über Unternehmensgrenzen und Standorte hinweg. Die Integration von Diensten innerhalb einer SOA kann über Punk-zu-Punkt-Verbindungen (die Dienste kennen sich untereinander und stellen Ihre Verbindung direkt her) oder einen so genannten Hub-and-Spoke-Ansatz erfolgen (die Verbindung zwischen zwei Diensten erfolgt nicht direkt, sondern über einen Zentralknoten [Hub]). Im Bereich SOA werden diese Zentralknoten als ServiceRegistry oder auch WebServiceRegistry bezeichnet.

Die Kommunikation mit einem Webservice erfolgt in der Regel über ein standardisiertes, XML basiertes Protokoll namens SOAP, ursprünglich Simple Object Access Protocol. Mittels SOAP lassen sich sowohl Daten (native Datentypen und Objekte) austauschen als auch Remote Procedure Calls durchführen.

Theoretisch ist der Datenaustausch auch über andere Protokolle wie REST (Representational State Transfer) oder proprietäre Lösungen (z.B. CSV) möglich. Da SOAP jedoch die größte Verbreitung genießt ist vom Einsatz anderer Protokolle abzuraten.

Webservices lassen sich theoretisch in einem einfachen Texteditor entwickeln. Da dies aber einen extrem hohen Aufwand mit sich bringt, werden üblicherweise Frameworks dafür eingesetzt. Ein sehr verbreitetes Framework für die Entwicklung von Webservices ist Apache Axis2. Einerseits ermöglicht Axis2 dem Entwickler den Zugriff und die Kontrolle über den Datenfluss und das XML-Parsing, andererseits ist es sehr flexibel und recht einfach in der Handhabung.

Diskussion

Ein Kommentar zu “Kurzeinstieg in Webservices mit Java Apache Axis2 Teil 1 – Was ist ein Webservice”

  1. Was ist der Unterschied zwischen Klasse und Instanz? Hier wird es erklärt:
    http://geekroom.de/entwicklung/java/eine-tasse-java-klassen-instanzen/

    Posted by Daniel | März 9, 2011, 16:59

Post a comment