У меня есть служба, которая создает сообщения Kafka с полезной нагрузкой типа com.fasterxml.jackson.databind.JsonNode
. Когда я использую это сообщение, я хочу, чтобы оно было сериализовано в POJO, но я получаю следующее сообщение:
IllegalArgumentException: для заголовка «kafka_receivedMessageKey» указан неправильный тип. Ожидается [класс com.example.Person], но фактический тип - [класс com.fasterxml.jackson.databind.node.ObjectNode]
Как мне настроить как производитель, так и потребительские части, чтобы они работали так, как я предполагаю?
Думаю, я могу использовать следующие подходы:
Kafka Consumer должен игнорировать __Key_TypeId__
, если он является подклассом JsonNode
ИЛИ
Kafka Producer должен создавать сообщение без заголовка __Key_TypeId__
, если оно является подклассом JsonNode
.
Но как мне реализовать любой из этих подходов? Или есть другой вариант?
com.example.Person
вместоJsonNode
низкого уровня? Он будет правильно сериализован в JSON, и этот тип будет указывать потребителю, что ему делать сbyte[]
в сетевом пакете. - person Artem Bilan   schedule 08.07.2019