XSLTExternalMappingIU

Gruppe

Integration Units

Klassenname

com.ebd.hub.datawizard.iu.XSLTExternalMappingIU

Funktion

Die Integration Unit kann verwendet werden, um auf einer XML-Datei eine XSLT-Transformation durchzuführen.

Beschreibung

Einleitung: Integration Units.

Die XSLTExternalMappingIU kann verwendet werden, um auf einer XML-Datei eine XSLT-Transformation durchzuführen. Die Integration Unit erwartet die Daten immer im UTF-8-Encoding. Sie müssen als Dokumentenart zwingend Eigene Klasse verwenden. Eine empfangene XML-Datei wird dadurch also direkt zur XSLT-Transformation an die Integration Unit übergeben.

Beschreibung der Parameter

Parametername

Erlaubte Werte

Default-Wert

Beschreibung

xslt factory

net.sf.saxon.TransformerFactoryImpl

Angabe der XSLT-Factory.

xslt file

Pfadangabe zur verwendeten XSLT-Datei.

Für die Transformation wird per Default die Saxon-Library verwendet, die separat installiert werden muss. Gehen Sie dazu z. B. auf die Seite https://sourceforge.net und geben Sie den Suchbegriff "saxon" ein. Laden Sie sich dort die ZIP-Datei herunter und legen Sie die darin enthaltenen .jar-Dateien im Ordner ./extlib ab. Die angegebene Factory (Parameter xslt factory) muss im Klassenpfad von Lobster_data bereitstehen (was sie tut, wenn Sie die .jar-Dateien im Ordner ./extlib ablegen). Hinweis: Sie müssen den Integration Server neu starten, um die neuen Klassen bekannt zu machen.

Mit dem Parameter xslt file wird die zu verwendende XSLT-Datei angegeben.

images/download/attachments/21305666/XSLT-version-1-modificationdate-1529501950000-api-v2.png

Wenn Sie nicht die korrekte Saxon-Library zur Verfügung stellen, erhalten Sie folgende Fehlermeldung beim Ausführen eines Profils, das diese Integration Unit verwendet.

images/download/attachments/21305666/XSLT_2-version-1-modificationdate-1529501950000-api-v2.png

Beispiel

Erzeugen Sie ein neues Profil, wählen Sie den Eingangsagenten Manu. Hochladen, wählen Sie die Dokumentenart Eigene Klasse und setzen Sie die Checkbox Kein Mapping. Für die Integration Unit in Phase 5 können Sie die Einstellungen aus dem obigen Screenshot übernehmen. Die dort verwendete XSLT-Datei werden wir im Folgenden zur Verfügung stellen. In Phase 6 legen Sie bitte wie im folgenden Screenshot einen Antwortweg vom Typ Datei an.

images/download/attachments/21305666/XSLT_3-version-1-modificationdate-1529501950000-api-v2.png

images/download/attachments/21305666/XSLT_4-version-1-modificationdate-1529501950000-api-v2.png

Hier die in der Integration Unit angegebene XSLT-Datei.

xslt_v1.xslt
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="teacher">
<p><u><xsl:value-of select="."/></u></p>
</xsl:template>
<xsl:template match="student">
<p><b><xsl:value-of select="."/></b></p>
</xsl:template>
<xsl:template match="/">
<html>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

Verwenden Sie folgende XML-Datei als Eingangsdatei des Profils.

xslt_test.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="class.xsl"?>
<class>
<student>Jack</student>
<student>Harry</student>
<student>Rebecca</student>
<teacher>Mr. Bean</teacher>
</class>

Als Ausgabedatei sollte Ihr Profil dann folgende Datei liefern.

ausgabe_xslt.xml
<html>
<body>
<p><b>Jack</b></p>
<p><b>Harry</b></p>
<p><b>Rebecca</b></p>
<p><u>Mr. Bean</u></p>
</body>
</html>