Altova MapForce 2024 Enterprise Edition

In diesem Beispiel wird erläutert, wie Sie mit MapForce einen SOAP-Webservice generieren. Um einen SOAP-Webservice zu generieren, müssen die im Kapitel SOAP-Webservice-Konfiguration beschriebenen Schritte 2-5 durchgeführt werden. Der Ablauf ist der Folgende:

 

1.Generierung von Code (in diesem Beispiel Java) anhand eines MapForce-Beispielprojekts.

2.Erzeugung des Code mittels Build

3.Bereitstellung des Service auf einem Server

4.Aufrufen des Webservice

 

Nähere Informationen zu den einzelnen Verfahren finden Sie in den Unterabschnitten weiter unten. Das in diesem Kapitel beschriebene Webservice-Beispielprojekt hat den Namen getAuthor.mfp. Das Projekt wurde im Kapitel Erstellen eines SOAP-Webservice-Projekts erstellt. Sie finden dieses Projekt und alle damit in Zusammenhang stehenden Dateien im Ordner Tutorial.

 

In diesem Beispiel wird aus Gründen der Einfachheit eine einfache Webserver-Konfiguration verwendet. In einer Produktionsumgebung müssen Sie unter Umständen abhängig von Webserver, Sicherheitsvorgaben und anderen Faktoren eine andere Konfiguration verwenden.

 

Zum Aufrufen des SOAP-Webservice wird hier die XMLSpy Enterprise Edition verwendet. Wenn Sie XMLSpy nicht installiert haben, benötigen Sie einen SOAP-Client, um den Webservice zu testen, oder Sie müssen Programmcode schreiben, der den Webservice aufrufen kann. Sie können den Webservice auch testen, indem Sie in MapForce einen Webservice-Aufruf erstellen.

 

Herunterladen und Entpacken von Tomcat, Axis2 und Ant

Um die obigen Schritte durchführen zu können, müssen die folgenden Technologien installiert sein.

 

Java SE JDK 8, 11, 17, 21 (einschließlich OpenJDK)

Apache Tomcat (Webserver, der den Host für den Service bildet)

Apache Axis2 (Webservice-Prozessor und Framework, das die Erstellung, Bereitstellung und Verwendung von mit Tomcat integrierten Webservices erleichtert)

Apache Ant (Befehlszeilentool, das zur Erzeugung des Codes verwendet wird)

 

Laden Sie Tomcat, Axis2 und Ant herunter und entpacken Sie die entsprechenden Pakete in ein lokales Verzeichnis.

 

Konfigurieren von Tomcat, Axis2 und Ant

Nachdem Sie Tomcat, Axis2 und Ant entpackt haben, müssen Sie die folgenden Umgebungsvariablen definieren:

 

Die Umgebungsvariable CATALINA_HOME muss auf den Ordner gesetzt werden, in dem Tomcat installiert wurde.

Die Umgebungsvariable ANT_HOME muss auf das Verzeichnis, in dem Ant installiert ist, gesetzt werden.

Die Umgebungsvariable AXIS2_HOME muss auf das Verzeichnis, in dem Axis2 installiert ist, gesetzt werden.

Die Umgebungsvariable JAVA_HOME muss auf das Verzeichnis, in dem Java JDK installiert wurde, gesetzt werden.

Die Umgebungsvariable PATH muss den Pfad zu %ANT_HOME%\bin enthalten.

 

In diesem Beispiel wird der Webservice von der Axis2-Verwaltungsseite aus auf Tomcat hochgeladen. Um Axis2 mit Tomcat zu integrieren, gehen Sie folgendermaßen vor:

 

1.Kopieren Sie die Datei axis2.war aus dem Axis2-Paket in das Verzeichnis %CATALINA_HOME%\webapps von Tomcat.

2.Starten Sie Tomcat.

3.Überprüfen Sie, ob Axis2 ausgeführt wird, indem Sie die folgende Seite aufrufen: http://localhost:8080/axis2.

 

Um zu überprüfen, ob Ant ausgeführt wird, geben Sie in die Befehlszeile ant ein. Die Meldung Buildfile: build.xml does not exist! bedeutet, dass Ant konfiguriert wurde und nach einer Build-Datei sucht. Nähere Informationen zur Ant-Konfiguration finden Sie im Handbuch zu Ant.

 

Schritt 1: Generieren von Java-Code

Im ersten Schritt wird Java-Code für das Webservice-Projekt generiert. Gehen Sie folgendermaßen vor:

 

1.Öffnen Sie das Projekt getAuthor.mfp.

2.Klicken Sie mit der rechten Maustaste im Projektfenster auf das Projekt und wählen Sie den Befehl Code generieren in | Java. Generierter Code wird von MapForce standardmäßig in einem neuen Ordner namens output, der sich im selben Ordner wie das Projekt befindet, gespeichert. Wenn Sie die Ausgabeeinstellungen ändern möchten, klicken Sie mit der rechten Maustaste auf das Projekt im Projektfenster und wählen Sie im Kontextmenü den Befehl Eigenschaften.

 

Nähere Informationen zum Generieren von Java-Code finden Sie unter Generieren von Java-Code. Nähere Informationen zu Projekteinstellungen finden Sie unter Projekteinstellungen.

 

Schritt 2: Erzeugen von Code

Im Zuge der Codegenerierung wurden mehrere neue Dateien erstellt, darunter die Datei build.xml. Die Datei wird als Konfigurationsskript verwendet, das definiert, wie Quellcode erzeugt werden soll. Dazu gehören die Kompilierung, das Testen, das Verpacken, die Bereitstellung und andere Aufgabe.

 

Um den im vorherigen Schritt generierten Java-Code zu erzeugen, führen Sie in der Befehlszeile Ant im selben Verzeichnis, in dem sich die Datei build.xml befindet, aus (Abbildung unten). In diesem Tutorial behalten wir die Standardeinstellung unverändert bei. Wie Sie das Ausgabeverzeichnis ändern können, ist unter Projekteinstellungen erläutert.

mff_soap_java_ex02

Sobald der Java-Code erzeugt wurde, wird im Ausgabeverzeichnis eine Axis-Archivdatei (.aar) mit dem Standardnamen Mapping.aar erstellt. Das .aar-Archiv enthält alle erforderlichen Komponenten eines Webservice in Form einer einzigen Datei, wodurch das Archiv einfacher auf Apache Axis2 bereitgestellt werden kann.

 

Es wird empfohlen, dem Archiv einen aussagekräftigen Namen zu geben, um es von anderen eventuell bereits auf den Server hochgeladenen oder in Zukunft hochgeladenen Archiven zu unterscheiden. In unserem Beispiel geben wir dem Archiv den Namen getAuthor.aar.

 

Schritt 3: Bereitstellen des Webservice auf Tomcat

In Schritt 3 muss nun das Archiv getAuthor.aar über die Axis2-Verwaltungsseite auf Tomcat bereitgestellt werden. Gehen Sie folgendermaßen vor:

 

1.Starten Sie Tomcat.

2.Öffnen Sie die Axis2-Web-Verwaltungsseite (http://localhost:8080/axis2/axis-admin/upload) und laden Sie das im vorherigen Schritt erstellte getAuthor.aar-Archiv hoch.

 

Auf der Axis2-Verwaltungsseite steht daraufhin der neue Webservice getAuthorService zur Verfügung und ist aktiv (Abbildung unten).

mff_soap_java_ex04

 

Schritt 4: Aufrufen des Webservice

Im letzten Schritt wird der Webservice nun aufgerufen. Um den soeben bereitgestellten Webservice aufzurufen, verwenden wir die Altova XMLSpy Enterprise Edition.

 

Verwendung der zuvor erstellten Request-Datei

Wenn Sie bereits eine Beispiel-Request-Datei erstellt haben (in unserem Beispiel getAuthorRequest.xml siehe Beschreibung Erstellen eines Webservice-Projekts), gehen Sie folgendermaßen vor:

 

1.Öffnen Sie getAuthorRequest.xml in XMLSpy. Das Element Query hat als Wert Iceland, d.h. es sollen alle isländischen Autoren und deren Book-Datensätze vom Server zurückgegeben werden. Sie können mit der Request-Datei experimentieren und für das Query-Element einen anderen Wert definieren (z.B. France).

2.Klicken Sie im Menü SOAP auf Request an Server senden.

3.Lassen Sie im Dialogfeld SOAP-Request-Einstellungen alle Standardeinstellungen unverändert und klicken Sie auf OK. XMLSpy initiiert daraufhin den Aufruf. Daraufhin wird eine Response Message mit allen relevanten Author-Datensätzen in einer neuen XML-Datei geöffnet. Nähere Informationen zur Response Message finden Sie unter Erstellen eines SOAP-Webservice-Projekts.

 

Erstellen einer neuen Request-Datei

Wenn Sie in XMLSpy eine neue Request-Datei erstellen möchten, gehen Sie vor, wie unten beschrieben:

 

1.Starten Sie XMLSpy.

2.Klicken Sie im Menü SOAP auf Neuen SOAP-Request erzeugen. Wenn Sie dazu aufgefordert werden, geben Sie den Pfad zur WSDL-Datei ein (Abbildung unten).

mff_soap_java_ex05

3.Klicken Sie auf OK. Wenn Sie aufgefordert werden, eine SOAP-Operation auszuwählen, wählen Sie getAuthor aus und bestätigen Sie die Auswahl.

4.Definieren Sie als Wert für das Element Query das gewünschte Land (z.B. UK).

5.Führen Sie die unter Verwendung der zuvor erstellten Request-Datei oben beschriebenen Schritte 2-3 durch.

 

© 2018-2024 Altova GmbH