Oftmals möchte man Binärdateien 1:1 von A nach B transportieren. Mirth Connect kennt für den Transfer von binären Dateien keinen eigenen Datentyp. Man kann sich hier behelfen, indem man die Binärdaten MIME-codiert in einen XML-Container verpackt. Die Datentypen für Quelle un Ziel müssen jeweils als XML definiert werden. Als File Type wählt man binary, wodurch die Daten MIME-codiert werden
Mittels eines prepocessor scriptes werden die Daten in XML verpackt:
// Modify the message variable below to pre process data message="<XML><PassThrough>"+message+"</PassThrough></XML>;"; return message;
Innerhalb eines destination connectors definiert man dann einen Transformer, der die Daten in einer Channelvariablen ablegt.
Schlussendlich wird in Konfiguration des destination connectors eingestellt, dass die Daten wieder in Binärform aus der Channelvariablen $(PassThroughDate)
ausgegeben werden.
Die zu transferierenden Dateien dürfen nicht zu groß sein. Ansonsten erhält man eine Fehlermeldung
ERROR-300: Transformer error org.mule.umo.transformer.TransformerException: Java heap space (java.lang.OutOfMemoryError)
Man kann dann versuchen mit der Startoption -Xms der JVM in der Datei mirthconnect_service.vmoptions die Größe des Heapspaces zu vergrößern.
Du muss angemeldet sein, um einen Kommentar zu veröffentlichen.