Apache AXIS Architektur



Ähnliche Dokumente
Wiederholung: Beginn

Verteilte Systeme: Übung 4

Anleitung über den Umgang mit Schildern

Print2CAD 2017, 8th Generation. Netzwerkversionen

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

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

Arbeiten mit UMLed und Delphi

Professionelle Seminare im Bereich MS-Office

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

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

Dokumentation zur Versendung der Statistik Daten

Gruppenrichtlinien und Softwareverteilung

Speicher in der Cloud

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

Programmieren I. Kapitel 15. Ein und Ausgabe

1 topologisches Sortieren

Medea3 Print-Client (m3_print)

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Enigmail Konfiguration

Zwischenablage (Bilder, Texte,...)

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

mit attraktiven visuellen Inhalten

Guide DynDNS und Portforwarding

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Firewalls für Lexware Info Service konfigurieren

RT Request Tracker. Benutzerhandbuch V2.0. Inhalte

Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei

Institut für Programmierung und Reaktive Systeme 25. August Programmier-Labor Übungsblatt. int binarysearch(int[] a, int x),

Firewalls für Lexware Info Service konfigurieren

Client-Server mit Socket und API von Berkeley

GITS Steckbriefe Tutorial

Serienbriefe schreiben mit Ratio - Adressen (Microsoft Word Versionen 8.0 und 9.0)

Inhaltsverzeichnis Seite

Große Übung Praktische Informatik 1

Objektorientierte Programmierung

Geld Verdienen im Internet leicht gemacht

Software Engineering Klassendiagramme Assoziationen

Identity Propagation in Fusion Middleware

Lizenzierung von SharePoint Server 2013

Auszug aus JAX-WS Folien

Java und XML 2. Java und XML

Wie halte ich Ordnung auf meiner Festplatte?

VS Praktikum 03 Konzept

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel für Mac. amac-buch Verlag

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

Rundung und Casting von Zahlen

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

ROFIN App Benutzerhandbuch. Version 1.0

Java: Vererbung. Teil 3: super()

Mail-Signierung und Verschlüsselung

Statuten in leichter Sprache

ICS-Addin. Benutzerhandbuch. Version: 1.0

SMS/ MMS Multimedia Center

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

RIS Abbild mit aktuellen Updates

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Mind Mapping am PC. für Präsentationen, Vorträge, Selbstmanagement. von Isolde Kommer, Helmut Reinke. 1. Auflage. Hanser München 1999

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Hilfedatei der Oden$-Börse Stand Juni 2014

Informationen zum neuen Studmail häufige Fragen

Konzepte der Informatik

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien

1.3. Installation und Konfiguration von Filr Desktop

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

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

Kommunikations-Parameter

Wie Sie mit Mastern arbeiten

Web Services Security

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

Elexis-BlueEvidence-Connector

Workflow, Business Process Management, 4.Teil

Installation der SAS Foundation Software auf Windows

Netzwerkversion PVG.view

Testen mit JUnit. Motivation

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Dokumentenverwaltung im Internet

Veröffentlichen von Apps, Arbeitsblättern und Storys. Qlik Sense Copyright QlikTech International AB. Alle Rechte vorbehalten.

Ein neues Outlook Konto können Sie im Control Panel über den Eintrag Mail erstellen.

3 Installation von Exchange

<script type="text/javascript"> <! <%= page(page.searchsuggestionsscript) %> // > </script>

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Gezielt über Folien hinweg springen

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel

Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut

Der lokale und verteilte Fall

WebService in Java SE und EE

STRATO Mail Einrichtung Mozilla Thunderbird

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Orientierungshilfen für SAP PI (Visualisierungen)

Transkript:

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 Elemente Deserialisierung Encoding WSDL Tools Apache AXIS Architektur 1.1. Übersicht 1.1.1. Vorbemerkungen Die Informationen über AXIS sind eher provisorisch und beziehen sich auf die Version 1.x. Es kann also noch viele Änderungen geben! 1.1.2. Handlers und Message Pfad in Axis Axis wurde von Grund auf darauf ausgelegt, Messages zu verarbeiten, also nicht nur SOAP. Der ursprüngliche Ansatz war umfassender, weil man mit weiteren XML Protokollen gerechnet hat (nach XML-RPC, SOAP und den Bemühungen der XML Protokoll Work Group von W3C). Kern von Axis ist eine Reihe von unterschiedlichen Handlern, die in einer bestimmten Reihenfolge aufgerufen werden. Die Reihenfolge selbst wird aufgrund des Deployment Descriptors und weiterer Faktoren bestimmt. An den Handler selber wird ein sogenannter MessageContext übergeben. Ein MessageContext ist eine Datenstruktur, welche primär aus folgenden Teilen besteht: - eine Request Message - eine Response Message - Properties Als nächstes muss zwischen Client und Server unterschieden werden: - Server: in diesem Fall wird ein TransportListener einen MessageContext kreieren und das Axis Framework aufrufen - Client: in diesem Fall wird ein MessageContext kreiert kreiert und das Axis Framework aufgerufen Das Axis Framework muss den MessageContext durch die konfigurierten Handler durchschleusen. Jeder Handler hat dabei die Möglichkeit mit dem kreierten MessageContext zu arbeiten, entsprechend der Auslegung des Handlers. ApacheAxisArchitektur.doc 1 / 15

1.2. Grobarchitektur von Axis 1.2.1. Architektur einer Web Services Anwendung - Entwicklersicht Aus Sicht des Entwicklers besteht ein Web Services Umfeld grob aus folgenden Layern, aus folgender Layer-Architektur (Patterns: siehe Buschmann et al: Software Architektur Patterns): Tools: WSDL und Proxy Generierung Administrationstools Monitore (SOAP, TCP, ) Management Monitore Logging Laufzeitsystem SOAP Message Processing Security Service Provisioning Schauen wir uns diese einzelnen Layer etwas genauer an. 1.2.1.1. WS - Laufzeitsystem Das Laufzeitsystem besteht aus Client und Server seitigen Komponenten: das Server-seitige das Laufzeitsystem für Web Services muss in der Lage sein, SOAP Messages und Web Services zu hosten. Kein Tool kann die Client oder Web Service Applikation generieren. Dagegen ist dies bei WSDD, WSDL und Proxy der Fall. ApacheAxisArchitektur.doc 2 / 15

1.2.2. Web Services Plattform Nun wollen wir die allgemeine Architektur konkretisieren und Axis darauf abbilden (oder umgekehrt): Ein Applikations-Server muss, wenn er SOAP fähig sein will, in der Lage sein, mit unterschiedlichen Transport-Protokollen zu kommunizieren (Transport Komponente). Die Messages werden im SOAP (oder XML Format) empfangen. Je nach eingesetzten Datentypen müssen eigene Serializer und Deserializer eingesetzt werden (insbesondere wenn Sie Datentypen verwenden, welche durch die Standards nicht unterstützt werden). Diese Architektur wurde in etwa in Axis realisiert. Unabhängig von Axis macht der Aufbau Sinn. Sprachspezifische Handler kennen selber erstellt und mit dem Framework kombiniert werden. ApacheAxisArchitektur.doc 3 / 15

1.2.3. Die Axis Komponenten Die konkrete Axis Architektur kenn verschiedene Handler Ebenen: - globale (aus server-config.wsdd) - eigene ergänzende Handler (wie beispielsweise für eine Logging Applikation: die Anzahl der Zugriffe auf einen bestimmten Service werden gelogged). 1.2.3.1. Der Transport Die Transport-Komponente ist verantwortlich für: - das Interface auf die physikalische Netzwerk-Komponenten - für den Empfang der SOAP Anfragen - für das Kreieren des Message Inhalts (SOAP konform) - für das Versenden der SOAP Message ApacheAxisArchitektur.doc 4 / 15

1.2.3.2. Message Processing Die eigentliche Verarbeitung geschieht mithilfe von Handlern. Mehrere Handler können zu einer Chain zusammengefügt werden. Aufgaben des Message Processings in Axis Identifikation der Initialisierungs-Blöcke und des SOAP Knotens (wer?, was?) Abbildung der SOAP Message auf Java Objekte Ausführen der Handler und Chains Verarbeitung der SOAP Header Informationen Weiterleitung an den Service Dspatcher Im Folgenden müssen wir den Aufbau der Handler genauer berücksichtigen. Wie oben erwähnt, kann zwischen globalen und eigenen oder lokalen Handlern unterschieden werden. In diesem Zusammenhang istder Message Flow durch die Axis Engine wichtig. ApacheAxisArchitektur.doc 5 / 15

1.2.3.3. Message Flows Die Aufgabe eines Message Flow Systems, wie es mithilfe der Handler im Axis Engine implementiert wurde, sind: - die eindeutige Zuordnung der verarbeitenden Blöcke für den konkreten SOAP request - Verarbeitung / Generierung der SOAP Response - Generierung und Weiterleitung allfälliger Fehlermeldungen (Fault Flow). Schematisch:(auch fehler müssen weitergeleitet werden). 1.2.3.4. Processing Scope Handler und Chains in Aktion Handlers und Chains müssen gefunden und aktiviert werden. Allfällig auftretende Fehler müssen behandelt und weiter gemeldet werden. ApacheAxisArchitektur.doc 6 / 15

1.2.3.5. Serialisierungs-Framework Das Serialisierungs-Framework ist beispielsweise für das Datentyp-Mapping von XML auf Java und umgekehrt zuständig. Dieses muss allfällige RPC und Document Style Konventionen berücksichtigen (plus Schemata). Axis implementiert ein JAX-RPC konformes Mapping. Das Mapping umfasst Basisdatentypen (int, char, float, double, boolean,...) aber auch generische Arrays und Java Beans, sowie eigene Serialisierungen. Best Practice: - immer lesbar sind Strings / Dolumente - Java Collections verbieten sich in heterogenem Umfeld oder falls der Dienst universell einsetzbar sein soll. - Die Serialisierung und Deserialisierung ist beim Document Style einfacher als bei RPC (logisch: man übermittelt ja ein XML Dokument). Was noch fehlt, ist das Dispatchen des Requests an den zuständigen Web Service. ApacheAxisArchitektur.doc 7 / 15

1.2.3.6. Service Dispatching Der Web Service Nachdem der Request aufbereitet ist, muss er an den vorgesehenen Service weitergeleitet werden. Zu den Aufgaben des Service Dispatchers gehören: - das Laden des Web Service Agenten - das Formattieren des Endpoint Calls - die Ausführung der Business Logik - das Serialisieren der Rückgabe als SOAP Message. 1.2.3.7. Axis Registry Die Registry ist, wie weiter oben bereits ersichtlich, für die Server Konfiguration und Flow Kontrolle zuständig. Informationen darüber finden wir in der server-config.wsdd Datei im Verzeichnis %AXIS_HOME%/WEB-INF/. Der Inhalt dieser Datei unterscheidet sich je nachdem wie viele Services Sie deployed haben und wie Sie Ihre Axis Engine konfiguriert haben: <?xml version="1.0" encoding="utf-8"?> <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <globalconfiguration> <parameter name="adminpassword" value="admin"/> <parameter name="attachments.directory" value="c:\jakarta-tomcat-5.0.16\webapps\axis\web- INF\attachments"/> <parameter name="sendmultirefs" value="true"/> <parameter name="sendxsitypes" value="true"/> <parameter name="attachments.implementation" value="org.apache.axis.attachments.attachmentsimpl"/> <parameter name="sendxmldeclaration" value="true"/> <parameter name="axis.sendminimizedelements" value="true"/> <requestflow> <handler type="java:org.apache.axis.handlers.jwshandler"> <parameter name="scope" value="session"/> </handler> <handler type="java:org.apache.axis.handlers.jwshandler"> <parameter name="scope" value="request"/> <parameter name="extension" value=".jwr"/> </handler> ApacheAxisArchitektur.doc 8 / 15

</requestflow> </globalconfiguration> <handler name="soapmonitor" type="java:org.apache.axis.handlers.soapmonitorhandler"> <parameter name="wsdlurl" value="/axis/soapmonitorservice-impl.wsdl"/> <parameter name="servicename" value="soapmonitorservice"/> <parameter name="namespace" value="http://tempuri.org/wsdl/2001/12/soapmonitorservice-impl.wsdl"/> <parameter name="portname" value="demo"/> </handler> <handler name="localresponder" type="java:org.apache.axis.transport.local.localresponder"/> <handler name="soapmmonitorservice" type="java:org.apache.axis.handlers.soapmonitorhandler"> <parameter name="wsdlurl" value="/axis/soapmonitorservice-impl.wsdl"/> <parameter name="servicename" value="soapmonitorservice"/> <parameter name="namespace" value="http://tempuri.org/wsdl/2001/12/soapmonitorservice-impl.wsdl"/> <parameter name="portname" value="demo"/> </handler> <handler name="urlmapper" type="java:org.apache.axis.handlers.http.urlmapper"/> <handler name="authenticate" type="java:org.apache.axis.handlers.simpleauthenticationhandler"/> <handler name="tracker" type="java:loghandler"> <parameter name="filename" value="tracking.log"/> </handler> <service name="adminservice" provider="java:msg"> <parameter name="allowedmethods" value="adminservice"/> <parameter name="enableremoteadmin" value="false"/> <parameter name="classname" value="org.apache.axis.utils.admin"/> <namespace>http://xml.apache.org/axis/wsdd/</namespace> </service> <service name="version" provider="java:rpc"> <parameter name="allowedmethods" value="getversion"/> <parameter name="classname" value="org.apache.axis.version"/> </service> <service name="soapmonitorservice" provider="java:rpc"> <parameter name="allowedmethods" value="publishmessage"/> <parameter name="scope" value="application"/> <parameter name="classname" value="org.apache.axis.monitor.soapmonitorservice"/> </service> <service name="urn:xmltoday-delayed-quotes" provider="java:rpc"> <requestflow> <handler type="soapmonitor"/> </requestflow> <responseflow> <handler type="soapmonitor"/> </responseflow> <parameter name="allowedmethods" value="getquote test"/> <parameter name="classname" value="stockquoteservice"/> </service> <transport name="http"> <requestflow> <handler type="urlmapper"/> <handler type="java:org.apache.axis.handlers.http.httpauthhandler"/> </requestflow> </transport> <transport name="local"> <responseflow> <handler type="localresponder"/> </responseflow> </transport> </deployment> Globale (ganz am Anfang) und lokale Handler sind klar ausgezeichnet. Die einzelnen Services, welche deployed wurden, sind klar erkennbar: - Name und Typ - Parameter : Klasse, erlaubte Methoden - Allfälliger alternativer Request / Response Flow (um beispielsweise eine Anzeige im SOAPMonitor zu ermöglichen). ApacheAxisArchitektur.doc 9 / 15

1.2.4. Kurzzusammenfassung Message Flow Verarbeitungsketten (Chains) bestehen aus einer geordneten Menge von Handlern. Die Message wird protokollspezifisch empfangen. Dafür ist ein Transport Listener zuständig. Dieser Listener kann typischerweise als http Servlet (vom Framework) zur Verfügung gestellt werden. Der (Transport-) Listener wandelt die protokollspezifischen Daten in ein Message Objekt (org.apache.axis.message) um und stellt dieses Objekt in den MessageContext. Der Listener fixiert auch den transportname String im Message Context, beispielsweise http. Der Listener übergibt den Message Context an die Axis Engine. Diese überprüft zuerst das Transport Objekt, welches Informationen über die Request Chain und eventuell die Response Chain enthält. Falls eine Request Chain vorliegt, wird den Message Context an die invoke() Methode übergeben und somit alle Handler aus der Request Chain aufgerufen. Danach folgt die Bearbeitung einer allfällig vorhandenen Global Request Chain und der in der Chain enthaltenen Handler. Falls einer der Handler das servicehandler Attribut des Message Contexts setzt (die sgeschieht typischerweise im URLMapper, sofern das Protokoll http ist), dann kann der passenden Service aufgerufen werden. Der URL Mapper bildet beispielsweise die URL auf den in der Axis Engine vorhandenen Dienst ab (Beispiel: http://localhost:8080/axis/services/urn:xmltoday-delayed-quotes auf StockQuoteService). Schliesslich muss ein Provider angegeben werden, also ein Handler, welcher die Business Logik des Services implementiert. Falls die Anfrage vom RPC Typus ist, wird der Handler duch die Klasse org.apache.axis.providers.java.rpcprovider.class repräsentiert. Der Aufbau der Klasse ist denkbar einfach: - die Klasse fragt den Message Context ab und bestimmt Methode und Parameter public void processmessage(messagecontext msgcontext, SOAPEnvelope reqenv, SOAPEnvelope resenv, Object obj) throws Exception {... SOAPService service = msgcontext.getservice(); ServiceDesc servicedesc = service.getservicedescription(); OperationDesc operation = msgcontext.getoperation(); Der Handler kann auch auf die Informationen aus dem Deployment zugreifen. Diese Informationen werden in der Registry bzw. im obigen Server WSDD File abgespeichert. ApacheAxisArchitektur.doc 10 / 15

1.2.5. Message Pfad beim Client Die obigen Bilder sind symmetrisch d.h. beim Client verlaufen die Verarbeitungsketten im Wesentlichen umgekehrt: - der Client Proxy empfängt die Message in einem Transport Handler, Teil des Client Axis Engine - der Transport Handler reicht die Informationen an - die globalen Handler weiter und diese schliesslich - zum lokalen Service (Request / Response) - der Provider Layer fehlt natürlich auf der Client Seite - dieser Layer kommuniziert schliesslich mit der Client Anwendung. Das folgende Bild aus der Axis Dokumentation veranschaulicht diesen Ablauf Die eigentliche Arbeit muss vom Transport Sender erledigt werden: - dieser muss dafür sorgen, dass die Protokollanbindung korrekt durchgeführt wird - eine allfällige Antwort eines Services wird ins responsemessage Feld des MessageContext gestellt und - der Message Context wird dann an die zuständigen Verarbeitungsketten weiter gereicht - zuerst an die Transport Handler - dann an die globalen Handler - und schliesslich an die Service Handler ApacheAxisArchitektur.doc 11 / 15

1.3. Axis Subsysteme Axis bestehet aus mehreren Subsystemen, wobei die Aufteilung in einzelne Pakete im Sourcecode nicht genau der funktionalen Aufteilung entspricht. 1.4. Message Flow Subsystem Weiter oben haben wir einen Handler als Pivot bezeichnet. Um was handelt es sich dabei? 1.4.1. Handler und Verarbeitungsketten / Chains Handler werden in einer bestimmten reihenfolge aufgerufen und verarbeiten dann die message. Falls ein Handler einen Request empfängt und eine Antwort versendet oder eine Anfrage bearbeitet anschliessend eine Antwort kreiert, dann wird dieser Handler als Pivot Punkt bezeichnet. Wie bereits weiter oben gesehen, können Chains aus Transport, globalen und Service Handlern bestehen, oder ganzen Teilchains. Ein typischer Ablauf könnte etwa folgendermassen aussehen: Die Pivots sind leicht erkennbar: bei diesen werden die Meldungen nicht einfach weitergeleitet sondern bearbeitet. ApacheAxisArchitektur.doc 12 / 15

Der Aufbau einer Chain aus Handlern wird im folgenden UML Diagramm wiedergegeben: (das Diagramm lässt erkennen, dass eine Chain in etwa dem Design Pattern Chain of Responsability entspricht). Chains können, falls sie online sind, geklont werden, falls gleichzeitig mehrere Anfragen bearbeitet werden müssen. Die Registry besitzt Factories, um unterschiedliche Handler und Chains zu bauen. 1.4.2. Message Contexts Eine Skizze des UML Diagramms des Message Contextes zeigt, dass dieser aus Messages bestehend aus zwei Teilen, SOAP Part und Attachments, besteht, wobei beide Klassen aus dem Interface Part abgeleitet werden: ApacheAxisArchitektur.doc 13 / 15

1.4.3. Axis Engine Die Axis Engine besteht aus einer abstrakten Klasse, welche zwei konkrete Unterklassen besitzt: - AxisClient - AxisServer Sie haben oben bereits gesehen, dass Client und Server symmetrisch sind. Jetzt sehen Sie den Grund dafür: 1.5. Schlussbemerkungen Soweit zur Architektur von Axis. Es bleibt viel zu deuten und zu verstehen. Die beste Quelle für diese Zusammenfassung war für mich der Quellcode und einige Hilfstools, mit denen ich diesen genauer angeschaut habe. Die Axis Architektur Dokumentation ist unvollständig, auch die Infos bei Axis sind unvollständig und vom Typus tbd /to be done. Axis ist aber ein System, ein Framework, welches sich auf dem richtigen Weg befindet: - auffalend einfach - erweiterbar -... (ich wiederhole die Marketingsprüche der Axis Bauer). ApacheAxisArchitektur.doc 14 / 15

APACHE AXIS ARCHITEKTUR... 1 1.1. ÜBERSICHT... 1 1.1.1. Vorbemerkungen... 1 1.1.2. Handlers und Message Pfad in Axis... 1 1.2. GROBARCHITEKTUR VON AXIS... 2 1.2.1. Architektur einer Web Services Anwendung - Entwicklersicht... 2 1.2.1.1. WS - Laufzeitsystem...2 1.2.2. Web Services Plattform... 3 1.2.3. Die Axis Komponenten... 4 1.2.3.1. Der Transport...4 1.2.3.2. Message Processing...5 1.2.3.3. Message Flows...6 1.2.3.4. Processing Scope Handler und Chains in Aktion...6 1.2.3.5. Serialisierungs-Framework...7 1.2.3.6. Service Dispatching Der Web Service...8 1.2.3.7. Axis Registry...8 1.2.4. Kurzzusammenfassung Message Flow... 10 1.2.5. Message Pfad beim Client... 11 1.3. AXIS SUBSYSTEME... 12 1.4. MESSAGE FLOW SUBSYSTEM... 12 1.4.1. Handler und Verarbeitungsketten / Chains... 12 1.4.2. Message Contexts... 13 1.4.3. Axis Engine... 14 1.5. SCHLUSSBEMERKUNGEN... 14 ApacheAxisArchitektur.doc 15 / 15