#spring-batch
Вопрос:
Я не могу сохранить ошибку регистрации на всех этапах (этап анализа, бизнес-ошибка, ошибка базы данных, ошибка недопустимых данных) в файле csv
Причина: Входная строка csv не может быть получена, так как метод ошибки содержит только исключение в качестве параметра, а не фактические данные строки csv. (Например: только исключение синтаксического анализа имеет метод inputString (), а остальная часть этапа обработки ошибок не содержит входных данных)
Как получить входную строку или строку, обрабатываемую на всех этапах пакетного задания spring??
Мне нужно создать csv-файл с ошибкой со следующими столбцами строк CSV номер строки сообщение об ошибке причина
Ответ №1:
Если во время чтения возникнет ошибка, то a FlatFileParseException
будет передано в SkipListener#onSkipInRead
. Это исключение дает вам номер строки, а также необработанную строку, считанную из файла.
Если вы хотите перехватывать ошибки во время обработки, т. Е. в SkipListener#onSkipInProcess
, то вам необходимо написать класс исключений, содержащий все сведения, необходимые для создания отчетов об ошибках. Элемент может быть сконструирован таким образом, чтобы содержать исходную строку, с которой он был считан.