2017-11-29 1 views
0

Wir haben die Anforderung, einen Anhang zu einem Orbeon-Formular aus einem einfachen Automatisierungsskript zu holen. Wir haben die „List Forms Attachments“ API (https://doc.orbeon.com/form-runner/api/persistence/list-form-data-attachments.html) und versuchen, es zu nennen, ein einfaches „curl“ Skript, das als Orbeon Tomcat-Instanz auf demselben Host läuft:Verwenden von Orbeon-Formularen "List Forms Attachments" API

curl -v "http://localhost:8080/orbeon/fr/service/$app/$form/attachments?document=$docid" 

Dieses eine HTTP liefert 403 (Verboten), und selbst nachdem wir alles gelesen haben, was wir über Orbeon-Sicherheit finden können, kratzen wir uns immer noch die Köpfe darüber, wie wir Orbeon konfigurieren. Gibt es ein einfaches Konfigurationsbeispiel, das eine Orbeon-Konfiguration zeigt, mit der die API von einem lokalen Skript wie dem unseren aufgerufen werden kann? Wir führen Orbeon CE 2017.1.

Wenn es eine Tortur ist, diese API zum Laufen zu bringen, wäre die andere Option eine Datenbanklösung. Wir haben Orbeon auf einer MySQL-Persistenzschicht ausgeführt, und dasselbe Skript, das wir verwenden, hat auch Zugriff auf diese Datenbank. Gibt es eine einfache Möglichkeit, das XML eines übermittelten Formulars zu übernehmen und den Anhang für ein bestimmtes Formularfeld abzurufen?

Wir finden in der eingereichten Form von XML zu sehen, dass die Befestigungs-Tag sieht wie folgt aus:

<File1 filename="Original Filename.doc" mediatype="application/msword" size="14236"> 
    file:/tmp/tomcat7-tomcat7-tmp/xforms_upload_7266596219758922423.tmp?filename=Original+Filename+doc&amp;mediatype=application%2Fmsword&amp;size=14236&amp;mac=fc2febb1227e93643a048fbb02abc16bba346531 
</File1> 

Wenn wir die orbeon_form_data_attach Datenbanktabelle zu scannen, sehen wir eine Zeile mit dem Dateiinhalt wir erwarten, aber die datei_name Spalte doesn Passen Sie die Dateiinformationen in der obigen XML-Datei nicht an ... In diesem Beispiel lautet der Dateiname in der Datenbank 1af8cd16367470362e13f77e679c0ae590e1f4a5.bin. Einige unserer Formulare haben mehrere Anhänge, und es scheint keinen direkten Weg zu geben, vom Formular-XML in den Datei-Namen in der Datenbanktabelle zu wechseln.

Eine dieser Lösungen wäre für uns in Ordnung - wir brauchen nur einen Weg, um die Anhänge für ein Formular aus einem einfachen Skript zu erhalten.

Antwort

1

Als Referenz ist die entsprechende Dokumentation Authorization of Pages and Services.

Sie können, obwohl dies nicht für die Produktion, sondern nur für Test und Entwicklung getan werden soll, alle Dienste ohne Authentifizierung öffnen. Siehe this section. Andernfalls müssen Sie eine authorization service einrichten.

+0

Danke für die Referenz - wir waren uns dessen bewusst, aber wir hofften, dass es einen einfacheren Weg geben könnte. –

Verwandte Themen