Syntaxfehler in den Quelldaten

Bei fehlerhaften Quelldaten wirft Lobster_data eine IllegalDataException. Es kann systemweit eine Klasse angegeben werden, die beim Auftreten dieses Fehlers aufgerufen wird. Diese Klasse muss das Interface com.ebd.hub.datawizard.parser.ICorrectValue implementieren. Lobster_data bietet eine Programmierschnittstelle (API), die es Ihnen auch erlaubt eigene Komponenten in Java zu entwickeln. Hierzu bieten wir eine vertiefte Schulung an. Bei Interesse wenden Sie sich bitte an unsere Mitarbeiter im Support bzw. im Vertrieb.

Dazu muss dem Integration Server mitgeteilt werden, dass eine Behandlung von fehlerhaften Quelldaten erforderlich ist. Das wird durch das Setzen der folgende System-Property getan.

-Dhub.datawizard.handleIllegalData=true

Zusätzlich wird über das die folgende System-Property der voll qualifizierte Klassenname der Handler-Klasse ohne Dateierweiterung erwartet.

-Dhub.datawizard.IllegalDataClass

Lobster_data wird so zur Startzeit mitgeteilt, welche Klasse beim Auftreten einer IllegalDataException aufzurufen ist. Zur Laufzeit wird bei jedem Auftreten einer IllegalDataException ein Objekt der Klasse instantiiert und die im Interface definierte Methode aufgerufen. Führt die so durchgeführte Korrektur nicht zum Erfolg, wird die Verarbeitung endgültig abgebrochen. Dadurch wird verhindert, dass Lobster_data in eine Endlosschleife gerät.

Standard-Klasse DefaultCorrectValue


Gelegentlich kann es vorkommen, dass infolge mangelnder Datenqualität der Eingangsdaten Steuerzeichen enthalten sind, die das Parsen der Daten verhindern. Dafür kann ein genereller Handler vereinbart werden, der diese Fehler behandelt. Es gibt bereits eine einfache Standard-Implementierung, die alle ISO-Steuerzeichen (Hexcode 0x00 bis 0x1F) durch einen Unterstrich ersetzt.

com.ebd.hub.datawizard.parser.DefaultCorrectValue.

Diese Klasse erwartet unter dem Pfad ./conf/invalid_data_settings.properties eine Properties-Datei, in der die Namen aller Profile (je Zeile ein Name) enthalten sind, für die die Korrektur angewendet werden soll.

Hinweis: Wenn der Profilname ein Leerzeichen, Komma, Semikolon, Doppelpunkt, Gleichheitszeichen oder Backslash enthält, muss dieses Zeichen in der Datei durch einen vorangestellten Backslash entwertet (escaped) werden.