Anbindung des Datastore-DMS als Archivsystem

Archivierung

Der Datastore-DMS-Adapter archiviert die vom ArchiveJob ausgewählten Nachrichtenattribute über die HTTP-API des Datastore-DMS. Neue Nachrichten werden nicht im B2B-Archivindex erfasst und sind daher über die B2B nicht abrufbar. Der lesende Zugriff ist nur für ältere Nachrichten gedacht, die mit dem Ixos-Adapter archiviert und anschließend in das Datastore-DMS migriert wurden (siehe Lesender Zugriff auf migrierte Dokumente).

Die zu archivierenden Attribute werden über die allgemeinen Properties des ArchiveJobs, insbesondere B3P_ARCHIVE_MSGS, ausgewählt. Der Adapter sendet jedes vorhandene Attribut in einem eigenen Multipart-Request an das Datastore-DMS. Als Dateiname wird die Attribut-ID mit der Endung .txt verwendet.

Einrichtung

Der ArchiveJob wird wie in der allgemeinen Dokumentation beschrieben als Scheduler-Service eingerichtet. Diese allgemeinen Eigenschaften müssen gesetzt werden:

Eigenschaft Beschreibung
B3P_ARCHIVE_TYPE com.nextlevel.b2bbp.datastoredms.ArchiveDatastoreDMS
B3P_INDEX_TYPE Leer lassen. Neue Nachrichten dürfen nicht im Archivindex erfasst werden; der Job startet nicht, wenn die Eigenschaft gesetzt ist.

Global Properties

Diese Global Properties sind spezifisch für den DatastoreDMS-Adapter und gelten für Archivierung und lesenden Zugriff:

Eigenschaft Pflicht Beschreibung
DATASTORE_DMS_BASE_URL Ja Basis-URL der Datastore-DMS-API, beispielsweise https://dms.example.org/api.
DATASTORE_DMS_DOC_AREA Ja Dokumentenbereich im Datastore-DMS.
DATASTORE_DMS_TARGET_FOLDER Ja Zielordner im Dokumentenbereich.
DATASTORE_DMS_USER Ja Datastore-DMS Benutzername für die HTTP-Basic-Authentifizierung.
DATASTORE_DMS_PASSWORD Ja Mit dem B2B-Encrypt-Tool kodiertes Passwort.
DATASTORE_DMS_TIMEOUT_IN_MILLISECONDS Nein Gemeinsamer Connect- und Read-Timeout in Millisekunden. Der Standardwert ist 60000.
B3P_ARCHIVE_MESSAGE_MONITOR_IMPL com.nextlevel.b2bbp.datastoredms.monitor.EmailArchiveMonitorDatastoreDMS  
B3P_ARCHIVE_AS2_MESSAGE_MONITOR_IMPL com.nextlevel.b2bbp.datastoredms.monitor.AS2ArchiveMonitorDatastoreDMS  
B3P_ARCHIVE_MONITOR_IMPL com.nextlevel.b2bbp.datastoredms.monitor.ArchiveMessageMonitorDatastoreDMS  

Aus den Angaben werden die URLs nach folgendem Schema gebildet. Dokumentenbereich und Zielordner werden als URL-Pfadsegmente codiert.

Zweck URL
Archivierung (POST) <DATASTORE_DMS_BASE_URL>/<DATASTORE_DMS_DOC_AREA>/<DATASTORE_DMS_TARGET_FOLDER>/archive?indexed=false
Lesender Zugriff (GET) <DATASTORE_DMS_BASE_URL>/<DATASTORE_DMS_DOC_AREA>/repository/doc/<Archiv-ID>/content

Konfigurationsbeispiel

# ArchiveJob (Service-Properties)
B3P_ARCHIVE_TYPE = com.nextlevel.b2bbp.datastoredms.ArchiveDatastoreDMS
B3P_INDEX_TYPE = <leer>
# Global Properties
DATASTORE_DMS_BASE_URL = https://datastore.example.com/dms_api
DATASTORE_DMS_DOC_AREA = B2B
DATASTORE_DMS_TARGET_FOLDER = Nachrichten
DATASTORE_DMS_USER = b2b-archive
DATASTORE_DMS_PASSWORD = Vlc4ZIHi7oc=
DATASTORE_DMS_TIMEOUT_IN_MILLISECONDS = 60000

Fehlt eine Pflichtproperty, ist sie leer, kann das Passwort nicht entschlüsselt werden oder ist der Timeout ungültig, schlägt die Initialisierung fehl und der ArchiveJob wird nicht gestartet.

Clearing-History

Der Adapter unterstützt die Archivierung der Clearing-History. Sie wird über die allgemeine Global Property aktiviert:

B3P_DO_ARCHIVE_CLEARING=true

Die Clearing-History wird als separates DMS-Dokument mit dem Dateinamen clearing-history.txt gespeichert.

EDIFACT-Metadaten

Zusätzlich zu den Basis-Metadaten werden Metadaten aus dem EDIFACT-Interchange der Nachricht übergeben. Quelle ist ausschließlich der EDIFACT-Text der Nachricht; ist die Nachricht kein EDIFACT, bleiben die Felder leer. Unterstützt werden UTILMD, MSCONS, INVOIC, REMADV und APERAK.

Listenwerte werden im JSON als {"list": ["wert1", "wert2"]} übergeben; leere und doppelte Werte werden entfernt.

Lesender Zugriff auf migrierte Dokumente

Die Monitor-Klassen des Datastore-DMS-Adapters lesen weiterhin über den unveränderten, bisherigen B2B-Archivindex und rufen die Dokumente anhand der Archiv-ID aus dem Datastore-DMS ab. Neue Nachrichten werden nicht indiziert und sind nicht auffindbar.

Voraussetzungen

  • Die Dokumente wurden mit unveränderter Archiv-ID aus dem Ixos-Archiv in das Datastore-DMS migriert. Die alte Ixos-Archiv-ID muss der Repository-ID im Datastore-DMS entsprechen.
  • Der bisherige Archivindex bleibt unverändert erhalten.

Fehlerverhalten

Situation Verhalten des ArchiveJobs
HTTP 404, 406 oder 412 Der gesamte Joblauf wird abgebrochen, da von einem Konfigurations- oder API-Vertragsfehler ausgegangen wird.
HTTP 201 mit leerer oder nicht auswertbarer Antwort beziehungsweise ohne id oder areaName Der gesamte Joblauf wird wegen einer ungültigen API-Antwort abgebrochen.
Andere HTTP-Statuscodes, einschließlich anderer 2xx-Antworten, 500, 503 und 504 Die Nachricht erhält den Archivfehlerstatus ARF; der Job verarbeitet weitere Nachrichten.
Verbindungsfehler, Connect-Timeout oder Read-Timeout Die Nachricht erhält den Archivfehlerstatus ARF; der Job verarbeitet weitere Nachrichten.
View Me   Edit Me