Anzeige weiterer Formate in jadice web toolkit über die jadice flow Anbindung
Hinweis
Dieser Artikel gilt für das jadice web toolkit Version >= 6.0.0.
Achtung
Die Anbindung von jadice flow ist ein optionales Zusatzmodul für das jadice web toolkit, welches separat lizenziert werden muss. Nehmen Sie hierfür bitte Kontakt mit uns auf.
Hintergrund
Das jadice web toolkit ist ein Multi-Format-Dokumentenbetrachter. Jedoch können nicht alle Dokumenten-Formate angezeigt werden. Dies liegt daran, dass wir natürlich nicht alle denkbaren Format implementiert haben und es auch für manche Formate keine geeignete Java-Library gibt (z.B. HEIC). Darüberhinaus kann es auch erforderlich sein, die Dokumente sehr exakt anzeigen zu wollen, was durch eine Eigen- oder Fremdimplementierung nicht möglich ist (beispielsweise stellt Libreoffice eine DOCX-Datei oft anders da als Microsoft Word dies tut).
Über jadice flow ist es möglich, beliebige und auch native Anwendungen in einem Container zu verwenden und diese zur Anzeige zu verwenden, sofern diese Anwendungen eine API und einen Export in ein von uns unterstütztes Format unterstützen. Sehr viele Dokumente lassen sich mit den folgenden von uns bereitgestellten Workern konvertieren, Details finden Sie hier: Unterstütze Formate für die Anzeige im jadice web toolkit
Der Ablauf dabei sieht dann in etwa so aus:
- Format-Erkennung mit dem filetype-analyzer
- Wenn der erkannte Mime-Type in jadice web toolkit konfiguriert ist, Upload des Datenstroms nach S3/eureka
- Konvertierung über jadice flow
- Anzeige des konvertierten Datenstroms
- Dies geschieht ohne lokale Ablage als temporäre Datei!
Beachten Sie hierbei folgendes: Die flow-Anbindung ist als jadice Format realisiert. Das bedeutet, dass erst die jadice Format-Erkennung in der konfigurierten Reihenfolge versucht einen Datenstrom anzuzeigen. In allen jadice Produkten ist das Plain-Text-Format das letzte Format, wenn das jadice also mit einem Datenstrom nichts anfangen kann, wird die Datei als Textdokument angezeigt. Ist die flow-Anbindung aktiviert, ist dieses spezielle "flow Format" in der Reihenfolge das zweit-letzte Format. Wenn Sie also die flow-Anbindung so konfiguriert haben, dass beispielsweise AFP-Datenströme über flow konvertiert werden sollen, gleichzeitig aber das jadice AFP Format aktiv ist, dann hat das jadice AFP Format eine höhere Priorität und wird daher die Anzeige übernehmen und nicht die flow-Anbindung
Demo
Installation
Die pom.xml
(Maven) muss um folgendes Modul ergänzt werden
<dependency> <groupId>com.levigo.jadice.webtoolkit</groupId> <artifactId>webtoolkit-format-flow</artifactId> </dependency>
Konfiguration
jadice web toolkit
Über die application.yml
/ application.properties
des jadice web toolkit wird jadice flow konfiguriert.
Alle Werte liegen unter
webtoolkit.flow
(also z.B. webtoolkit.flow.auth-token
)
Es kann wahlweise neverpile eureka oder S3 als Storage konfiguriert werden. Dies muss einheitlich zu der Konfiguration von jadice flow sein.
Key | Beschreibung | default-Wert |
---|---|---|
controller-url | Die URL des jadice flow controllers | |
auth-token | Das Auth-Token für die Authentifizierung gegenüber flow * | |
eureka | ||
eureka-url | Die URL des eureka endpoints | |
eureka-username | Der eureka User | |
eureka-password | Das eureka Passwort | |
s3 | ||
s3-url | Die URL des S3 endpoints | |
s3-bucket | Der S3 Bucket | |
s3-access-key | Der S3 Access-Key | |
s3-secret-key | Der S3 Secret-Key | |
s3-protocol | Das S3-Protokoll | https |
s3-region | Die S3 Region |
* Für die Kommunikation der jadice flow Worker mit dem Controller wird ebenfalls ein Auth-Token verwendet. Hierfür empfiehlt es sich das Selbe Token zu nehmen.
(jadice flow)
Das Auth-Token wird im HELM-Chart folgendermaßen gesetzt:
secrets: controller: accessToken: ey...
Verwendung
Wenn flow konfiguriert ist, muss nun noch definiert werden, welche Dateiformate über jadice flow konvertiert werden sollen. Dies geschieht ebenfalls über die application.yml
/ application.properties
des jadice web toolkit.
Anbei ein Beispiel, wie Office-Dokumente über Libreoffice konvertiert werden können:
webtoolkit: format: flow: formats: - workflow-name: libreofficeToPDF mime-types-input: "application/vnd.openxmlformats-officedocument.wordprocessingml.document\ application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\ application/vnd.openxmlformats-officedocument.presentationml.presentation" mime-type-output: application/pdf format-output: pdf
Es muss in jadice flow ein Workflow mit dem Namen "libreofficeToPDF" konfiguriert sein.