Altova MapForce 2026 Professional Edition

Vorbereiten von Mappings für die Server-Ausführung

Zur Startseite Zurück Nach oben Weiter

In diesem Kapitel werden die wichtigsten Aspekte beim Vorbereiten von Mappings für die Ausführung auf einem Server erläutert. Die Ausführung von Mappings in einer Server-Umgebung erfordert aus folgenden Gründen einige Vorbereitungen:

 

Ein mit MapForce erstelltes Mapping kann Ressourcen (z.B. Datenbanken) referenzieren, die sich nicht auf dem aktuellen Rechner und Betriebssystem befinden.

Mapping-Pfade entsprechen standardmäßig Windows-Konventionen.

Der Rechner, auf dem MapForce Server läuft, unterstützt möglicherweise nicht dieselben Datenbankverbindungen wie der Rechner, auf dem das Mapping erstellt wurde.

 

Voraussetzungen

Wenn MapForce Server alleine (ohne FlowForce Server) ausgeführt wird, werden die folgenden Lizenzen benötigt:

 

Quellrechner: Zum Erstellen von Mappings und zum Kompilieren dieser Mappings zu Server-Ausführungsdateien (.mfx) wird die MapForce Enterprise oder Professional Edition benötigt. Nähere Informationen dazu finden Sie unter Kompilieren von Mappings zu MapForce Server-Ausführungsdateien.

Zielrechner: Auf dem Zielrechner benötigen Sie zur Ausführung des Mappings die MapForce Server oder MapForce Server Advanced Edition.

 

Wenn MapForce Server unter Verwaltung von FlowForce Server ausgeführt wird, gelten die folgenden Voraussetzungen:

 

Quellrechner: Zum Erstellen von Mappings und zum Bereitstellen dieser Mappings auf einem Zielrechner wird die MapForce Enterprise oder Professional Edition benötigt. Nähere Informationen dazu finden Sie unter Bereitstellen von Mappings auf FlowForce Server.

Zielrechner: Sowohl MapForce Server als auch FlowForce Server müssen lizenziert sein.

FlowForce Server muss an der konfigurierten Netzwerkadresse und am konfigurierten Port ausgeführt werden und darf nicht durch eine Firewall blockiert werden.

Sie haben ein FlowForce Server-Benutzerkonto mit Berechtigungen für den entsprechenden Container (standardmäßig hat jeder authentifizierte Benutzer Zugriff auf den Container /public).

 

Anmerkung: Als Quellrechner wird der Rechner, auf dem MapForce installiert ist, bezeichnet. Als Zielrechner wird der Rechner bezeichnet, auf dem MapForce Server und/oder FlowForce Server installiert ist. In einem typischen Szenario läuft MapForce auf einem Windows-Rechner, während MapForce Server und FlowForce Server auf einem Linux-Rechner ausgeführt werden.

 

Allgemeine Überlegungen

Beachten Sie die folgenden wichtigen Punkte:

 

Wenn Sie beabsichtigen, das Mapping mit einem eigenständigen MapForce Server auf einem Zielrechner auszuführen, müssen alle vom Mapping referenzierten Input-Dateien ebenfalls auf den Zielrechner kopiert werden.

Wenn MapForce Server unter Verwaltung von FlowForce Server ausgeführt wird, müssen diese nicht manuell kopiert werden. In diesem Fall sind die Instanz- und Schema-Dateien in dem an den Zielrechner gesendeten Bereitstellungspaket inkludiert, siehe Bereitstellen von Mappings auf FlowForce Server.

Wenn in einem Mapping benutzerdefinierte Funktionsaufrufe verwendet werden (z.B. in .dll- oder .class-Dateien implementierte Funktionen), werden die dazugehörigen Bibliotheken nicht automatisch mit dem Mapping bereitgestellt, da diese erst zur Laufzeit aufgelöst werden. In diesem Fall müssen Sie die erforderlichen Dateien manuell auf den Zielrechner kopieren. Der Pfad zur .dll- oder .class-Datei auf dem Server muss mit dem im MapForce-Dialogfeld Bibliotheken verwalten definierten übereinstimmen (siehe Abbildung unten).

inc-mapforce-dll-library

In einigen Mappings werden mehrere Input-Dateien über einen Platzhalter-Pfad ausgelesen (siehe Dynamische Verarbeitung mehrerer Input- oder Output-Dateien). In diesem Fall sind die Namen der Input-Dateien erst zur Laufzeit bekannt und können daher nicht bereitgestellt werden. Damit das Mapping erfolgreich ausgeführt werden kann, müssen die benötigten Input-Dateien auf dem Zielrechner vorhanden sein.

Wenn der Mapping-Ausgabepfad Verzeichnisse enthält, müssen diese Verzeichnisse auf dem Zielrechner bereits vorhanden sein. Andernfalls kommt es bei der Ausführung des Mappings zu einem Fehler. Im Gegensatz dazu werden in MapForce nicht vorhandene Verzeichnisse automatisch generiert, wenn die Option Output-Datei als temporäre Datei generieren aktiviert ist (siehe Ändern der MapForce-Optionen).

Wenn im Mapping ein Webservice aufgerufen wird, für den eine HTTPS-Authentifizierung mit einem Client-Zertifikat erforderlich ist, muss das Zertifikat ebenfalls an den Zielrechner übertragen werden.

Bevor Sie ein Mapping auf FlowForce Server bereitstellen oder es zu einer MapForce Server-Ausführungsdatei kompilieren, stellen Sie sicher, dass das Mapping in MapForce erfolgreich validiert werden kann (siehe Validieren von Mappings).

 

Übertragbarmachen von Pfaden

Um ein Mapping auf einem Server auszuführen, müssen Sie sicherstellen, dass es den jeweils geltenden Pfadkonventionen entspricht und dass eine unterstützte Datenbankverbindung verwendet wird.

 

Um Pfade auf Nicht-Windows-Betriebssysteme übertragen zu können, verwenden Sie in MapForce Mappings relative Pfade:

 

1.Öffnen Sie auf einem Windows-System eine Mapping-Design-Datei (.mfd) mit MapForce.

2.Wählen Sie den Menübefehl Datei l Mapping-Einstellungen und deaktivieren Sie das Kontrollkästchen Pfade im generierten Code absolut machen.

3.Öffnen Sie für jede Komponente das Dialogfeld Eigenschaften, machen Sie alle Dateipfade relativ und aktivieren Sie das Kontrollkästchen Alle Dateipfade relativ zur MFD-Datei speichern.

 

Nähere Informationen zu relativen und absoluten Pfaden in Mappings finden Sie unter Verwendung relativer und absoluter Pfade.

 

Arbeitsverzeichnis

In MapForce Server und FlowForce Server wird das Arbeitsverzeichnis ("working directory") verwendet, anhand dessen alle relativen Pfade aufgelöst werden,( siehe auch Pfade in verschiedenen Ausführungsumgebungen). Das Arbeitsverzeichnis wird zur Mapping-Laufzeit folgendermaßen definiert:

 

FlowForce Server: durch Bearbeitung des Auftragsparameters Working Directory.

MapForce Server API: über die Eigenschaft WorkingDirectory der COM und der .NET API oder über die Methode setWorkingDirectory der Java API.

MapForce Server-Befehlszeile: Das Arbeitsverzeichnis ist das aktuelle Verzeichnis der Befehlsshell.

 

Kompilieren von Mappings für die MapForce Server-Ausführung (Java)

Wenn Sie ein Mapping für die Ausführung mit MapForce Server kompilieren und Java als Transformationssprache auswählen, können Sie die folgenden run-Befehlsoptionen verwenden, um Probleme mit der Java Class Path-Auflösung zu vermeiden:

 

--java-classpath

--java-ignore-codebase

 

Nähere Informationen zu diesen Optionen finden Sie in der MapForce Server-Dokumentation.

 

Bereitstellen von Mappings auf FlowForce Server (Java)

Wenn Sie ein Mapping auf FlowForce Server bereitstellen und als Transformationssprache Java auswählen, können Sie in der MapForce_<version>.tool-Datei den Class Path und die Option java-ignore-codebase konfigurieren, um Probleme mit der Java Class Path-Auflösung zu vermeiden. Um die tool-Datei anzupassen, gehen Sie folgendermaßen vor:

 

1.Kopieren Sie die tool-Datei von:

 

C:\Programme\Altova\FlowForceServer<year>\tools

 

in das Instanzverzeichnis von FlowForce Server:

 

C:\ProgramData\Altova\FlowForceServer\data\tools (Standardpfad)

 

2.Bearbeiten Sie die Datei im Instanzverzeichnis folgendermaßen:

 

[Options]

java.codebase.ignore=1

 

[Environment]

CLASSPATH=<path>

 

Datenbankverbindungen

Wenn das Mapping Datenbankkomponenten enthält, für die spezifische Datenbanktreiber benötigt werden, müssen diese Treiber auch auf dem Zielrechner installiert werden.

 

Wenn Sie ein Mapping auf Nicht-Windows-Plattformen bereitstellen, werden ADO-, ADO.NET- und ODBC-Datenbankverbindungen automatisch in JDBC konvertiert. In diesem Fall können Sie die JDBC-Verbindung in MapForce mit Hilfe einer der folgenden Optionen konfigurieren, bevor Sie das Mapping bereitstellen oder zu einer Server-Ausführungsdatei kompilieren:

 

Erstellen Sie eine JDBC-Verbindung zur Datenbank (siehe Einrichten einer JDBC-Verbindung).

Füllen Sie die JDBC-Datenbankverbindungsinformationen im Abschnitt JDBC-spezifische Einstellungen der Datenbankkomponente aus (siehe Datenbank-Komponenteneinstellungen).

 

Native SQLite- und PostgreSQL-Verbindungen werden als solche beibehalten und müssen nicht zusätzlich konfiguriert werden. Nähere Informationen dazu finden Sie unter Datenbankmappings in verschiedenen Ausführungsumgebungen. Wenn im Mapping eine Verbindung zu einer dateibasierten Datenbank wie SQLite hergestellt wird, müssen zusätzliche Konfigurationsschritte durchgeführt werden (siehe Dateibasierte Datenbanken weiter unten).

 

Voraussetzungen für das Ausführen von Mappings mit JDBC-Verbindungen

Für die Ausführung von Mappings mit JDBC-Verbindungen muss ein Java Runtime Environment oder Java Development Kit auf dem Server-Rechner installiert sein. Dabei kann es sich um Oracle JDK oder einen Open Source Build wie z.B. Oracle OpenJDK handeln. Beachten Sie die folgenden wichtigen Punkte:

 

Die JAVA_HOME-Umgebungsvariable muss auf das JDK-Installationsverzeichnis verweisen.

Unter Windows hat ein Java Virtual Machine-Pfad in der Windows Registry Vorrang vor JAVA_HOME.

Die JDK-Plattform (64-Bit, 32-Bit) muss mit der Plattform von MapForce Server übereinstimmen. Andernfalls erhalten Sie möglicherweise den Fehler: "Kein Zugriff auf JVM".

 

Einrichten einer JDBC-Verbindung unter Linux:

Um unter Linux eine JDBC-Verbindung einzurichten, gehen Sie vor, wie unten beschrieben:

 

1.Laden Sie den vom Datenbankanbieter bereitgestellten JDBC-Treiber herunter und installieren Sie ihn auf dem Betriebssystem. Stellen Sie sicher, dass Sie die richtige Bit-Version für Ihre Plattform ausgewählt haben.

2.Definieren Sie die Umgebungsvariablen so, dass sie auf den Ordner verweisen, in dem der JDBC-Treiber installiert ist. Lesen Sie in der Dokumentation zum JDBC-Treiber nach, welche Umgebungsvariablen konfiguriert werden müssen.

 

Dateibasierte Datenbanken

Wenn im Mapping eine Verbindung zu einer dateibasierten Datenbank wie Microsoft Access oder SQLite hergestellt wird, ist die Datenbankdatei in dem auf FlowForce Server bereitgestellten Paket oder in der kompilierten MapForce Server-Ausführungsdatei nicht enthalten. Daher muss die Datenbankdatei manuell auf den Zielrechner übertragen oder in einem gemeinsamen Verzeichnis, auf das sowohl der Quell- als auch der Zielrechner Zugriff hat, gespeichert werden.

 

Manuelle Übertragung

Um die Datenbankdatei manuell zu übertragen, gehen Sie vor wie unten beschrieben:

 

1.Wählen Sie in MapForce den Menübefehl Datei | Mapping-Einstellungen und deaktivieren Sie das Kontrollkästchen Pfade im generierten Code absolut machen (siehe Ändern der Mapping-Einstellungen).

2.Rufen Sie die Datenbankkomponenteneinstellungen auf und definieren Sie einen relativen Pfad zur Datenbankdatei (siehe Definieren des Pfads zu dateibasierten Datenbanken). Um Probleme im Zusammenhang mit dem Pfad zu vermeiden, speichern Sie das Mapping und die Datenbankdatei im selben Verzeichnis.

3.Kopieren Sie die Datenbankdatei in ein Verzeichnis auf dem Zielrechner.

 

Um das Mapping auf dem Server auszuführen, wählen Sie eine der folgenden Methoden:

 

Wenn das Mapping auf FlowForce Server bereitgestellt wird, konfigurieren Sie einen FlowForce-Auftrag, der auf den Ordner verweist, in dem sich die Datenbankdatei befindet.

Wenn das Mapping von einem eigenständigen MapForce Server über die Befehlszeile ausgeführt wird, ändern Sie das aktuelle Verzeichnis in das Arbeitsverzeichnis (z.B. cd pfad\zum\arbeitsverzeichnis), bevor Sie den Befehl run aufrufen.

Wenn das Mapping über die MapForce Server API ausgeführt wird, definieren Sie das Arbeitsverzeichnis programmatisch, bevor Sie das Mapping ausführen. Die Eigenschaft WorkingDirectory steht in der COM und der .NET API und die Methode setWorkingDirectory steht in der Java API zur Verfügung.

 

Gemeinsames Verzeichnis

Wenn es sich beim Quell- und beim Zielrechner um Windows-Rechner im lokalen Netzwerk handelt, können Sie das Mapping so konfigurieren, dass die Datenbankdatei aus einem gemeinsamen Verzeichnis gelesen wird:

 

1.Speichern Sie die Datenbankdatei in einem gemeinsamen Verzeichnis, auf das beide Rechner Zugriff haben.

2.Rufen Sie die Datenbankkomponenteneinstellungen im Mapping auf und definieren Sie einen absoluten Pfad zur Datenbankdatei (siehe Definieren des Pfads zu dateibasierten Datenbanken).

 

Globale Ressourcen

Wenn ein Mapping anstelle von direkten Pfaden oder Datenbankverbindungen Referenzen auf globale Ressourcen enthält, können Sie diese globalen Ressourcen auch auf dem Server verwenden. Beachten Sie die folgenden Punkte:

 

Wenn Sie ein Mapping zu einer MapForce Server-Ausführungsdatei (.mfx) kompilieren, bleiben die Referenzen auf globale Ressourcen erhalten. Dadurch können Sie die tatsächlichen Ressourcen zur Mapping-Laufzeit auf dem Server bereitstellen.

Wenn Sie ein Mapping auf FlowForce Server bereitstellen, können Sie optional auswählen, ob darin auf dem Server verfügbare Ressourcen verwendet werden sollen.

 

Damit ein Mapping erfolgreich ausgeführt werden kann, müssen die als globale Ressourcen bereitgestellten Ressourcen mit der Server-Umgebung kompatibel sein:

 

Datei- oder Ordnerpfade müssen den Konventionen des Server-Betriebssystems entsprechen (z.B. Pfade im Linux-Stil, wenn das Mapping auf einem Linux-Server ausgeführt wird).

Als globale Ressourcen definierte Datenbankverbindungen müssen gültig sein und vom Server aus aufgerufen werden können.

 

Nähere Informationen dazu finden Sie unter Globale Ressourcen in MapForce Server und Globale Ressourcen in FlowForce Server..

© 2020-2026 Altova GmbH