2017-10-11 4 views
0

Dans mon travail par lots printanier, si itemWriter écrit une erreur, elle est ignorée. Et ItemSkipListener l'a reçu et consigne l'élément dans le fichier.Dans le lot de printemps, comment passer un paramètre de ItemWriter à SkipListener?

Mon article a une liste de données et je veux savoir quel élément dans la liste fait une erreur.

Mais dans ItemSkipListener, je peux seulement connaître l'élément et throwable. (ne peut pas savoir quel élément dans la liste)

Donc, je pense que itemWriter passe l'index de liste à ItemSkipListener. Comment puis-je faire cela? merci.

+0

J'ai trouvé la solution, lorsque l'exception s'est produite dans l'écriture, attraper l'exception et faire une nouvelle exception avec l'index de l'élément et etc. et le jeter. puis dans skipListener recevoir le throwable et peut obtenir les données. – SHRIN

+0

Favorisez votre commentaire à une réponse acceptée pour les autres utilisateurs –

Répondre

0

J'ai trouvé la solution moi-même. Lorsqu'une exception s'est produite dans l'éditeur, attrape l'exception et crée une nouvelle exception avec l'index de l'élément et etc. et lance-le. puis dans skipListener recevoir le throwable et peut obtenir les données.