From 0f8b60904f41f2aeb83b0a48416234f45eeb3210 Mon Sep 17 00:00:00 2001 From: Kai Moritz Date: Sun, 11 Sep 2022 22:12:26 +0200 Subject: [PATCH] `JsonDeserializer` ohne `ErrorHandlingDeserializer` MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit * Der `ErrorHandlingDeserializer` wird nicht nur benötigt, um die Informationen aufzuzeichnen, auf deren Basis der `DeadLetterPublishingRecoverer` die fehlgeschlagenen Nachrichten für das Dead-Letter-Topic serialisiert. * Er sorgt auch dafür, das ein Fehler nur einmal aufschlägt. * Ohne den `ErrorHandlingDeserializer` gerät die Anwendung daher in eine Endlosschleife, wenn eine Poison-Pill auf den `JsonDeserializer` trifft, und kommt aus dieser auch durch einen Neustart nicht mehr heraus! --- src/main/resources/application.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 488fcda..0261188 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -24,11 +24,10 @@ spring: consumer: group-id: my-group key-deserializer: org.apache.kafka.common.serialization.StringDeserializer - value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer + value-deserializer: org.springframework.kafka.support.serializer.JsonDeserializer properties: partition.assignment.strategy: org.apache.kafka.clients.consumer.StickyAssignor metadata.max.age.ms: 1000 - spring.deserializer.value.delegate.class: org.springframework.kafka.support.serializer.JsonDeserializer spring.json.type.mapping: > ADD:de.juplo.kafka.MessageAddNumber, CALC:de.juplo.kafka.MessageCalculateSum -- 2.20.1