使用 spring boot kafka 连接事件中心时出错

问题描述 投票:0回答:0

我有一个使用 spring-kafka 连接到 azure 事件中心(启用 kafka)的 spring boot 应用程序;
这些是 SASL 消费者属性:

props.put(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG, "SASL_SSL");
    props.put(SaslConfigs.SASL_MECHANISM, "PLAIN");
    props.put(SaslConfigs.SASL_JAAS_CONFIG,
               "org.apache.kafka.common.security.plain.PlainLoginModule required username=\"$ConnectionString\" password=\"Endpoint=sb://XXXXX.servicebus.windows.net/;SharedAccessKeyName=ZZZZZZ-pol;SharedAccessKey=YYYYY";"

    );

这是消费者:
@KafkaListener(
        topics = "${my-topic}",
        groupId = "$Default",
        concurrency = "${my-concurrency}"
)
public void listener(String message) {...}

不幸的是,当消费者尝试连接到主题时,我得到这个错误:

java.lang.RuntimeException: non-nullable field authBytes was serialized as null

在此之前,我可以从日志中看到这些fases被成功终止:

  • 将 SASL 客户端状态设置为 RECEIVE_APIVERSIONS_RESPONSE
  • 将 SASL 客户端状态设置为 SEND_HANDSHAKE_REQUEST
  • 将 SASL 客户端状态设置为 RECEIVE_HANDSHAKE_RESPONSE
  • 将 SASL 客户端状态设置为 INITIAL
  • 将 SASL 客户端状态设置为中级

蚂蚁建议?

spring-boot apache-kafka spring-kafka azure-eventhub sasl
© www.soinside.com 2019 - 2024. All rights reserved.