У меня есть приложение для партии Jakarta, которое запускает задание с разделами. В некоторых условиях процессор сигнализирует, что больше нечего делать, бросая исключение. Поскольку это исключение не должно ни провалить работу, ни провалить транзакцию в текущем чанке, я добавил это исключение из исключений для пропусков. Следовательно, я хочу, чтобы раздел прекратился, но позволил другим разделам все еще работать. В этом одном случае, предварительное, что работа в порядке для приложения, поэтому я бы хотел, чтобы работа была помечена как успех. После того, как все предварительные разделы не нужно исследовать оператором. Решение:
[*] ничего не делайте (просто обычный раздел)
Все элементы обрабатываются и написаны (без раннего выхода)
исключение бросает
. Продолжает выполнение. Если исключение не было брошено на куски первого элемента, я потеряю предыдущие элементы. Но
это означает, что все непрокамеруемые элементы все еще читаются и обрабатываются. Направьте результат шага, просмотрев все результаты разделения. Моя проблема заключается в том, что только путем выброса не поддающегося исключения я могу выйти из раздела, но это приводит к откату.
Подробнее здесь: https://stackoverflow.com/questions/797 ... on-the-job