Spring Batch SkipListener не вызывается при возникновении исключения в считывателе

Это моя конфигурация шага. Мой метод пропуска слушателей onSkipInWrite () вызывается правильно. Но onSkipInRead () не вызывается. Я обнаружил это, намеренно выбрасывая исключение нулевого указателя от моего читателя.

<step id="callService" next="writeUsersAndResources">
        <tasklet allow-start-if-complete="true">
            <chunk reader="Reader" writer="Writer"
                commit-interval="10" skip-limit="10">
                <skippable-exception-classes>
                    <include class="java.lang.Exception" />
                </skippable-exception-classes>
            </chunk>
            <listeners>
                <listener ref="skipListener" />
            </listeners>
        </tasklet>
    </step>

Я читал несколько форумов и менял теги listeners на обоих уровнях: внутри блока и вне тасклета. Ничего не работает ...

Добавление моего пропуска слушателя сюда

package com.legal.batch.core;

import org.apache.commons.lang.StringEscapeUtils;
import org.springframework.batch.core.SkipListener;
import org.springframework.jdbc.core.JdbcTemplate;


public class SkipListener implements SkipListener<Object, Object> {


    @Override
    public void onSkipInProcess(Object arg0, Throwable arg1) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onSkipInRead(Throwable arg0) {
    }

    @Override
    public void onSkipInWrite(Object arg0, Throwable arg1) {
}

}

Эксперты, пожалуйста, предложите

6
задан Peter Wippermann 19 December 2012 в 09:53
поделиться