Kafka 消费者因使用未知协议反序列化 Avro 消息时出错而失败
Kafka consumer is failing with Error deserializing Avro message with unknown protocol
在我的用例中,我创建了 JDBC kafka 连接器,从 oracle table 中提取数据并成功推送到 kafka 主题但是当我尝试从这个 kafka 主题读取消息时我得到下面列出的反序列化问题。
org.apache.kafka.common.errors.SerializationException: Error deserializing Avro message for id 2
Caused by: java.net.MalformedURLException: unknown protocol: localhost
at java.net.URL.<init>(URL.java:593)
at java.net.URL.<init>(URL.java:483)
at java.net.URL.<init>(URL.java:432)
at io.confluent.kafka.schemaregistry.client.rest.RestService.sendHttpRequest(RestService.java:124)
at io.confluent.kafka.schemaregistry.client.rest.RestService.httpRequest(RestService.java:188)
at io.confluent.kafka.schemaregistry.client.rest.RestService.getId(RestService.java:330)
问题出在 YAML 配置文件中的架构注册表 URL。注意unknown protocol
错误
改成这个(注意我在 URL 行添加了 http://
协议),它应该可以工作:
schema:
version: latest2
registry:
url: http://localhost:8081
在我的用例中,我创建了 JDBC kafka 连接器,从 oracle table 中提取数据并成功推送到 kafka 主题但是当我尝试从这个 kafka 主题读取消息时我得到下面列出的反序列化问题。
org.apache.kafka.common.errors.SerializationException: Error deserializing Avro message for id 2
Caused by: java.net.MalformedURLException: unknown protocol: localhost
at java.net.URL.<init>(URL.java:593)
at java.net.URL.<init>(URL.java:483)
at java.net.URL.<init>(URL.java:432)
at io.confluent.kafka.schemaregistry.client.rest.RestService.sendHttpRequest(RestService.java:124)
at io.confluent.kafka.schemaregistry.client.rest.RestService.httpRequest(RestService.java:188)
at io.confluent.kafka.schemaregistry.client.rest.RestService.getId(RestService.java:330)
问题出在 YAML 配置文件中的架构注册表 URL。注意unknown protocol
错误
改成这个(注意我在 URL 行添加了 http://
协议),它应该可以工作:
schema:
version: latest2
registry:
url: http://localhost:8081