#spring-cloud-stream #spring-cloud-stream-binder-kafka
#поток весеннего облака #spring-cloud-stream-binder-kafka
Вопрос:
Я работаю над приложением, в котором событие заставляет spring data repository сохранять данные;
Entity entity = entityRepository.save((Entity) event.getPayload());
этот код может вызывать различные исключения, такие как исключение DataIntegrityViolationException, которое является исключением во время выполнения.
Мой вопрос заключается в том, как
- Обработайте такое исключение и
- создание сообщения с полезной нагрузкой вызвало эту ошибку
- с Исключением,
- позволяет производителю выполнить действие.
Ответ №1:
Добавьте пользовательский обработчик ошибок в контейнер прослушивателя привязки…
@Bean
ListenerContainerCustomizer<AbstractMessageListenerContainer<?, ?>> customizer() {
return (container, dest, group) -> {
if (group.equals("theOneIWant")) {
container.setErrorHandler( ... );
}
};
}