* 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!
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