Caused by: io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException: Schema Not Found; error code: 404001
at io.confluent.kafka.schemaregistry.client.MockSchemaRegistryClient.getIdFromRegistry(MockSchemaRegistryClient.java:79)
at io.confluent.kafka.schemaregistry.client.MockSchemaRegistryClient.getId(MockSchemaRegistryClient.java:273)
at io.confluent.kafka.serializers.AbstractKafkaAvroSerializer.serializeImpl(AbstractKafkaAvroSerializer.java:82)
at io.confluent.kafka.serializers.KafkaAvroSerializer.serialize(KafkaAvroSerializer.java:53)
at org.apache.kafka.common.serialization.Serializer.serialize(Serializer.java:62)
at org.apache.kafka.clients.producer.KafkaProducer.doSend(KafkaProducer.java:902)
at org.apache.kafka.clients.producer.KafkaProducer.send(KafkaProducer.java:862)
at org.springframework.kafka.core.DefaultKafkaProducerFactory$CloseSafeProducer.send(DefaultKafkaProducerFactory.java:781)
at org.springframework.kafka.core.KafkaTemplate.doSend(KafkaTemplate.java:562)
at org.springframework.kafka.core.KafkaTemplate.send(KafkaTemplate.java:363)
Когда я использую MockSchemaRegistryClient, почему он пытается найти схему?
Я создал приведенный ниже тестовый класс для создания события с помощью AvroSerializer. [code]@SpringBootTest @EmbeddedKafka(partitions = 1, brokerProperties = { "listeners=PLAINTEXT://localhost:9092", "port=9092" }) @TestPropertySource(locations = ("classpath:application-test.properties")) @ContextConfiguration(classes = { TestAppConfig.class }) @DirtiesContext @TestInstance(TestInstance.Lifecycle.PER_CLASS) class EntitlementEventsConsumerServiceImplTest {
@Bean MockSchemaRegistryClient mockSchemaRegistryClient() { return new MockSchemaRegistryClient(); }
@Bean KafkaAvroSerializer kafkaAvroSerializer() { return new KafkaAvroSerializer(mockSchemaRegistryClient()); }
@Bean public DefaultKafkaProducerFactory producerFactory() { Map props = KafkaTestUtils.producerProps(embeddedKafkaBroker); props.put(KafkaAvroSerializerConfig.AUTO_REGISTER_SCHEMAS, false); return new DefaultKafkaProducerFactory(props, new StringSerializer(), kafkaAvroSerializer()); }
@Bean public KafkaTemplate kafkaTemplate() { KafkaTemplate kafkaTemplate = new KafkaTemplate(producerFactory()); return kafkaTemplate; } } [/code] Но когда я отправляю событие с помощью kafkaTemplate().send(appEventsTopic, applicationEvent);я получаю следующее исключение. [code]Caused by: io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException: Schema Not Found; error code: 404001 at io.confluent.kafka.schemaregistry.client.MockSchemaRegistryClient.getIdFromRegistry(MockSchemaRegistryClient.java:79) at io.confluent.kafka.schemaregistry.client.MockSchemaRegistryClient.getId(MockSchemaRegistryClient.java:273) at io.confluent.kafka.serializers.AbstractKafkaAvroSerializer.serializeImpl(AbstractKafkaAvroSerializer.java:82) at io.confluent.kafka.serializers.KafkaAvroSerializer.serialize(KafkaAvroSerializer.java:53) at org.apache.kafka.common.serialization.Serializer.serialize(Serializer.java:62) at org.apache.kafka.clients.producer.KafkaProducer.doSend(KafkaProducer.java:902) at org.apache.kafka.clients.producer.KafkaProducer.send(KafkaProducer.java:862) at org.springframework.kafka.core.DefaultKafkaProducerFactory$CloseSafeProducer.send(DefaultKafkaProducerFactory.java:781) at org.springframework.kafka.core.KafkaTemplate.doSend(KafkaTemplate.java:562) at org.springframework.kafka.core.KafkaTemplate.send(KafkaTemplate.java:363) [/code] [b]Когда я использую MockSchemaRegistryClient, почему он пытается найти схему?[/b]
Недавно мы добавили автоматизацию Kafka в наш проект, и благодаря созданию новой учетной записи потребителя мы смогли проводить опросы по этой теме и получать сообщения в нашем локальном хранилище. Когда я попытался отправить код в конвейер gitlab,...
Я использую приведенное ниже определение в своей схеме AVRO, зарегистрированной в теме Kafka
{
doc : list of employees ,
name : employees ,
type : ,
default : null
}
Ожидаемый результат:
сотрудники : ИЛИ ноль
Но ниже единицы:
employees : {...
Я пытаюсь добавить слитые зависимости для клиента по сериализации и реестра схемы Kafka Avro в моем приложении Spring Boot. Однако, когда я пытаюсь создать проект, используя Maven, я получаю следующую ошибку:
не смог найти артефакт io.confluent:...
Я пытаюсь добавить слитые зависимости для клиента по сериализации и реестра схемы Kafka Avro в моем приложении Spring Boot. Однако, когда я пытаюсь создать проект, используя Maven, я получаю следующую ошибку:
не смог найти артефакт io.confluent:...
Я пытаюсь добавить слитые зависимости для клиента по сериализации и реестра схемы Kafka Avro в моем приложении Spring Boot. Однако, когда я пытаюсь создать проект, используя Maven, я получаю следующую ошибку:
не удалось найти артефакт...