Nachrichen können aus dem Monitoring in eine seperate ZIP herunter geladen werden.

Übersicht

Diese Seite beschreibt die erweiterbare Konfiguration für den Download gezippter Edis.

Konfiguration vorhanden

Es kann eine Konfiguration (Extension) pro User durchgeführt werden und eine allgemeine Konfiguration hinterlegt werden.

Dabei wird folgende Namenskonvention erwartet:

ZIPPED_DOWNLOAD_CONFIG_<Username>

oder

ZIPPED_DOWNLOAD_CONFIG für die allgemeine Konfiguration.

Keine Konfiguration vorhanden

Hat ein User keine eigene Konfiguration wird die allgemeine genommen. Ist auch diese nicht vorhanden wird das alte Format benutzt.

Die Konfiguration wird als Extension hochgeladen mit folgendem Aufbau:

ARCHIVE_FILENAME=<Name des resultierenden Zip-Files>
ARCHIVE_TYPE=ZIP
CONTENT_TYPE=<Content-Typ der Antwort>
DEBUG=<true|false>
MSGTYPES=MSG1;MSG2 … ;MSGN
MSG1.RECOGNITION=<ALWAYS| dynamischer Ausdruck>
MSG1.PARTS= PART1;PART2;…PARTN
MSG1.UNIQUE
PART1.ATTNAME=<Name des Attributs in der Datenbank>
PART1.SOURCE=<ATTRIBUTE|ATTRIBUTE_ARCHIVE>
PART1.FILTER=<fully Qualified Classname>
PART1.NAMER=<fully Qualified Classname>
PART1.CONVERTER=<fully Qualified Classname>

Eigenschaften:

Eigenschaft

Bedeutung

ARCHIVE_FILENAME

Der Name der Ausgabedatei, z.B. edis.zip

ARCHIVE_TYPE

Art des Archivs.

CONTENT_TYPE

Rückgabetyp der http-Response

UNIQUE_ENTRIES

In der Zip-Datei werden keine Duplikate gespeichert, d.h. nur Nachrichten die sich byteweise unterscheiden landen in der zip (Default: false)

DEBUG

Wenn der Wert auf true gesetzt wird, wird zu jeder betrachteten Nachricht ein LOG-Eintrag geschrieben, indem eventuelle Fehler festgehalten werden. Das LOG-File findet man im resultierenden Zip-File unter dem Namen EXECUTION_LOG.txt

MSGTYPES

Namen der verschiedenen Nachrichtenarten. Wenn eine Nachricht ausgewählt wurde im Monitor wird für jeden MSGTYPE geprüft, ob die Bedingung RECOGNITION erfüllt ist. Wenn ja, werden die einzelnen Parts abgearbeitet. Wenn nein, wird der MSGTYPE für diese Nachricht übersprungen.

RECOGNITION

Falls RECOGNTION=ALWAYS, wird der MSGTYP für jede Nachricht ausgeführt. Falls RECOGNTION ein dynamischer Ausdruck ist, kann dieser ausgewertet werden. Im context des Ausdrucks kann auf das Message-Object zugegriffen werden. Man findet dieses unter B3P_OBJ_MESSAGE. Ist der dynamische Ausdruck true wird der MSGTYPE für die Nachricht betrachtet sonst nicht.

PARTS

Name der Parts die zu einem MSGTYPE gehören

UNIQUE

Falls auf true wird pro MSGTYPE nur ein Part in die Zip geschrieben. Default: true

ATTNAME

Gibt den Namen des zu nutzenden Attributes an. Soll im Archiv gesucht werden, so muss für .crypt-Dateien B3P_AS2_ORIG_STREAM, für .decrypt B3P_AS2_STREAM, für .mdn-Dateien B3P_AS2_MDN_STREAM und für alle anderen Dateien (z.B. .txt Dateien) B3P_ARCHIVE_FILESERVICE angegeben werden. (Achtung: auch Mails werden in .txt-Dateien gespeichert)

SOURCE

Gibt die DB-Tabelle an, in der nach dem Attribut gesucht werden soll. Soll im Archiv gesucht werden, so ist ARCHIVE anzugeben.

CONVERTER

Hier muss der Klassenname einer Java-Klasse angegeben werden, die das Interface org.b2bbp.engine.configurabledownload.IConverter implementiert. Mit einem Konverter kann man die bytes der Attribute beliebig transformieren und auch in mehrere Teile aufspalten.

FILTER

Hier muss der Klassenname einer Java-Klasse angegeben werden, die das Interface org.b2bbp.engine.configurabledownload.IFilter implementiert. Mit einem Filter kann man bestimmte Teile wieder entfernen

NAMER

Hier muss der Klassenname einer Java-Klasse angegeben werden, die das Interface org.b2bbp.engine.configurabledownload.INamer implementiert. Mit dieser Funktionalität können den einzelnen Teilen Dateinamen gegeben werden

Die Ausführungsreihenfolge ist: Laden des Attributes -> Ausführen des Converters -> Ausführen des Filters -> Ausführen des Namers

Der Standartkonverter ändert nichts. Der Standard Filter lässt alles durch und der Standard Filter nennt die Dateien unknown.txt

Konverter:

Funktion

Klassenname

Extrahiert aus einem AS2 Stream alle Nachrichten

org.b2bbp.engine.configurabledownload.ExtractAllAS2MessagesFlat

Extrahiert aus einem MAIL Stream alle Nachrichten

org.b2bbp.engine.configurabledownload.ExtractAllEdiMailAttachments

Extrahiert aus einer Standart formatierten Edi alle Nachrichten

org.b2bbp.engine.configurabledownload.ExtractAllPlainEdiMessages

Filter:

Funktion

Klassenname

Nur Edi-Nachrichten

org.b2bbp.engine.configurabledownload.EdiFilter

Wertet dynamischen Ausdruck aus

org.b2bbp.engine.configurabledownload.DynamicExprFilter

NAMER:

Funktion

Klassenname

Wertet einen dynamischen Ausdruck aus, um den Namen zu bestimmen

org.b2bbp.engine.configurabledownload.DynamicExprNamer

Bennent die Nachricht nach dem Edi-Standard

org.b2bbp.engine.configurabledownload.EdiNamer

Um den Dynamischen Ausdruck anzugeben für den Namer DynamicExprNamer muss folgender Eintrag hinzugefügt werden:

<Name des Parts>.org.b2bbp.engine.configurabledownload.DynamicExprNamer.expression=<dynamischer Ausdruck>

<Name des Parts>.org.b2bbp.engine.configurabledownload.DynamicExprFilter.expression=<dynamischer Ausdruck>

Innerhalb der dynamischen Ausdrücke kann man mit context. RAW_DATA auf die bytes des Parts zugreifen. Falls die bytes auch einen String repräsentieren kann auf diesen mit context.CURRENT_PAYLOAD zugegriffen werden.

Beispiel 1

Nur Edi-Nachrichten runterladen (MAIL, AS2 oder andere):

ARCHIVE_FILENAME=edi.zip
MSGTYPES=STANDARD
STANDARD.RECOGNITION=ALWAYS
STANDARD.PARTS=STANDARD_BASE_MESSAGE_EDI;STANDARD_BASE_MESSAGE;STANDARD_MAIL;STANDARD_AS2;STANDARD_MAIL_ARCHIVE

STANDARD_BASE_MESSAGE_EDI.ATTNAME=B3P_BASE_MESSAGE_EDI
STANDARD_BASE_MESSAGE_EDI.SOURCE=ATTRIBUTE
STANDARD_BASE_MESSAGE_EDI.FILTER=org.b2bbp.engine.configurabledownload.EdiFilter
STANDARD_BASE_MESSAGE_EDI.NAMER=org.b2bbp.engine.configurabledownload.EdiNamer

STANDARD_BASE_MESSAGE.ATTNAME=B3P_BASE_MESSAGE
STANDARD_BASE_MESSAGE.SOURCE=ATTRIBUTE
STANDARD_BASE_MESSAGE.FILTER=org.b2bbp.engine.configurabledownload.EdiFilter
STANDARD_BASE_MESSAGE.NAMER=org.b2bbp.engine.configurabledownload.EdiNamer

STANDARD_MAIL.ATTNAME=B3P_MIME_MSG_MAIN
STANDARD_MAIL.SOURCE=ATTRIBUTE_ARCHIVE
STANDARD_MAIL.FILTER=org.b2bbp.engine.configurabledownload.EdiFilter
STANDARD_MAIL.NAMER=org.b2bbp.engine.configurabledownload.EdiNamer
STANDARD_MAIL.CONVERTER=org.b2bbp.engine.configurabledownload.ExtractAllEdiMailAttachments

STANDARD_AS2.ATTNAME=B3P_AS2_STREAM
STANDARD_AS2.SOURCE=ATTRIBUTE_ARCHIVE
STANDARD_AS2.FILTER=org.b2bbp.engine.configurabledownload.EdiFilter
STANDARD_AS2.NAMER=org.b2bbp.engine.configurabledownload.EdiNamer
STANDARD_AS2.CONVERTER=org.b2bbp.engine.configurabledownload.ExtractAllAS2MessagesFlat

STANDARD_MAIL_ARCHIVE.ATTNAME=B3P_ARCHIVE_FILESERVICE
STANDARD_MAIL_ARCHIVE.SOURCE=ARCHIVE
STANDARD_MAIL_ARCHIVE.FILTER=org.b2bbp.engine.configurabledownload.EdiFilter
STANDARD_MAIL_ARCHIVE.NAMER=org.b2bbp.engine.configurabledownload.EdiNamer
STANDARD_MAIL_ARCHIVE.CONVERTER=org.b2bbp.engine.configurabledownload.ExtractAllEdiMailAttachments

Beispiel 2

Alle B3P_BASE_MESSAGES mit Dateinamen aus B3P_ORIG_FILE_NAME

ARCHIVE_FILENAME=edi.zip
MSGTYPES=MSG1
MSG1.RECOGNITION=ALWAYS
MSG1.PARTS=PART1;


PART1.ATTNAME=B3P_BASE_MESSAGE
PART1.SOURCE=ATTRIBUTE
PART1.NAMER=org.b2bbp.engine.configurabledownload.DynamicExprNamer
PART1.org.b2bbp.engine.configurabledownload.DynamicExprNamer.expression=${loatt(B3P_ORIG_FILENAME,${template(&(this.messageId))},DATA_ATTRIBUTE)}

Beispiel 3

Edi-Nachrichten und Zertifikatsresultat

Wie Beispiel 1 + folgende Msg:

MSG2.RECOGNITION=ALWAYS
MSG2.PARTS=PART5

PART5.ATTNAME=B3P_MIME_MSG_MAIN
PART5.SOURCE=ATTRIBUTE_ARCHIVE
PART5.CONVERTER=org.b2bbp.engine.configurabledownload.ExtractAllEdiMailAttachments
PART5.FILTER=org.b2bbp.engine.configurabledownload.DynamicExprFilter
PART5.NAMER=org.b2bbp.engine.configurabledownload.DynamicExprNamer
PART5.org.b2bbp.engine.configurabledownload.DynamicExprNamer.expression=verification.txt
PART5.org.b2bbp.engine.configurabledownload.DynamicExprFilter.expression=${regex(Z1 SecureMail Gateway Info - http://www.zertificon.com,${template(&(this.CURRENT_PAYLOAD))})}
View Me   Edit Me