Printemps-Lot: comment puis-je retourner une Tâche personnalisée code de sortie à partir d'un StepListener

La question est ceci: j'ai un Ressort de Lots avec une seule étape. Cette étape est appelée plusieurs fois. Si à chaque fois qu'il est appelé tout fonctionne ok (pas d'exception) le Travail le statut est "TERMINÉ". Si quelque chose de mauvais se fait au moins à l'un des exécutions de l'Étape (une exception est levée, je l'ai configuré un StepListener qui modifie le code de sortie à l'ÉCHEC:

public class SkipCheckingListener extends StepExecutionListenerSupport {

    public ExitStatus afterStep(StepExecution stepExecution) {
        String exitCode = stepExecution.getExitStatus().getExitCode();
        if (stepExecution.getProcessorSkipCount() > 0) {
            return new ExitStatus(ExitStatus.FAILED);
        }
        else {
            return null;
        }
    }

}

Cela fonctionne très bien, quand la condition est remplie le bloc "if" est exécutée et le travail se termine avec le statut d'ÉCHEC. Notez toutefois que le code de sortie de je reviens est toujours parmi la norme, celles qui viennent avec Spring Batch. J'aimerais revenir à mon personnalisée code de sortie tels que "ACHEVÉ AVEC SAUTE" à certains points. Maintenant, j'ai essayé de mettre à jour le code ci-dessus pour revenir simplement que:

public class SkipCheckingListener extends StepExecutionListenerSupport {

    public ExitStatus afterStep(StepExecution stepExecution) {
        String exitCode = stepExecution.getExitStatus().getExitCode();
        if (stepExecution.getProcessorSkipCount() > 0) {
            return new ExitStatus("COMPLETED WITH SKIPS");
        }
        else {
            return null;
        }
    }

}

comme il est décrit dans la documentation: http://static.springsource.org/spring-batch/reference/html/configureStep.html (5.3.2.1. Lot d'État contre État de Sortie). J'ai même essayé de

stepExecution.getJobExecution().setExitStatus("COMPLETED WITH SKIPS");

Et bien sûr, l'exécution arrive dans le bloc "if", exécute le code, et encore mon travail se termine avec le code de sortie TERMINÉE, complètement ignorant le code de sortie, j'ai mis par l'auditeur.

Il n'y a pas plus de détails sur ce point dans leurs docs, et je n'ai pas trouvé quoi que ce soit à l'aide de Google. Quelqu'un peut-il svp me dire comment dois-je aller sur la modification de la Poste le code de sortie de cette façon? Merci