向kafka主题发布消息时出错

Getting error while publishing message to kafka topic

我是卡夫卡的新手。我编写了一个简单的 JAVA 程序来使用 avro 模式生成消息。我已经生成了一个特定的记录。记录生成成功。我的架构尚未在我的本地环境中注册。它目前已在其他一些环境中注册。

我正在使用 apache kafka 生产者库将消息发布到我的本地环境 kafka 主题。我可以将消息发布到本地主题吗?或者模式也需要在本地模式注册表中注册。

以下是生产者属性-

        properties.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
        properties.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, KafkaAvroSerializer.class);
        properties.put(KafkaAvroSerializerConfig.SCHEMA_REGISTRY_URL_CONFIG, "https://schema-registry.xxxx.service.dev:443");```

Error I am getting while publishing the message -
``` org.apache.kafka.common.errors.SerializationException: Error registering Avro schema: 
Caused by: io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException: User is denied operation Write on Subject: xxx.avro-value; error code: **40301**

问题是 kafka 生产者默认尝试在主题上注册模式。所以,我添加了下面的 - properties.put(KafkaAvroSerializerConfig.AUTO_REGISTER_SCHEMAS, false); 它解决了这个问题。