当前位置: 首页 > 知识库问答 >
问题:

Camel Kafka:无法读取来自Kafka主题的消息

夔庆
2023-03-14

我有一个Kafka集群(版本:0.10.1.0),有9个代理和10个分区。

我尝试使用camel kafka2.14.3从java应用程序中获取消息。这是我的pom。xml

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-kafka</artifactId>
    <version>2.14.3</version>
</dependency>

这只是我使用的与骆驼Kafka相关的依赖项。下面是骆驼Kafka消费者代码。

<route id="ReadFromTopic">
    <from uri="kafka:[[topic]]?brokers=[[broker.list]]&amp;groupId=[[consumer.group]]" />   
    <log message="read message : ${body}" />
</route>

我正在使用文档中指定的KafkaURIhttps://camel.apache.org/components/latest/kafka-component.html.

但下面是我在加载camel上下文时遇到的异常

Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: kafka://[[topic]]?brokers=[[broker.list]]&groupId=[[consumer.group]] due to: Failed to resolve endpoint: kafka://[[topic]]?brokers=[[broker.list]]&groupId=[[consumer.group]] due to: There are 1 parameters that couldn't be set on the endpoint. Check the uri if the parameters are spelt correctly and that they are properties of the endpoint. Unknown parameters=[{brokers=[[broker.list]]}]

它表示未知参数=[{brokers=[[broker.list]]}]。我试过《Kafka3》。x,它消耗的能量很好。但我必须在制作中使用camel kafka2.14.3。我是否缺少任何依赖项或使用了错误的URI?

共有1个答案

苏选
2023-03-14

我认为你的第一个问题是正确的。我感到非常惊讶的是,Camel Kafka的URI格式在2.14.2和Camel 2的更新版本之间发生了如此大的变化。x、 也许是因为Kafka的新版本?

您可以在2.24.3版和2.14.3版的kafkanconfiguration文档中看到它。在2.14.3版上,没有getBrokers方法来获取brokers参数,因此您得到的错误消息取决于您使用的版本。

相比之下,在版本2.24.3上有这样一种方法,因此它对应于较新版本2的组件文档。x版本。

不幸的是,我没有找到版本2.14.3的组件文档,但也许您可以使用kafkanconfiguration的可能参数从第一个问题的URI构建它。

 类似资料:
  • 我们使用Akka流Kafka来生成和消费消息和Strimzi Kafka集群。以下是相关版本: 重构消息发出后,消费者停止工作。我们在主题中确实有一些信息,但消费者只是在无休止地等待。 以下是日志片段: 还有一些要点: 架构注册表配置正确且良好(否则生产者将无法工作)。 主题(和组协调器)很好,我可以通过这样的普通消费者消费消息: 这就是代码卡住的地方——我使用阻塞调用获取2条消息(甚至无法获取1

  • Debezium连接器的Kafka connect事件是Avro编码的。 在传递给Kafka connect standalone服务的connect-standalone.properties中提到了以下内容。 使用这些属性配置Kafka使用者代码: 在消费者实现中,下面是读取键和值组件的代码。我使用REST从模式注册表中获取键和值的模式。 解析密钥工作正常。在解析消息的值部分时,我得到了Arr

  • 我们正在使用Kafka流将数据写入接收器主题。我正在运行一个avro消费者命令行来检查接收器主题中是否有数据: bin/kafka-avro控制台-消费者-主题sink.output.topic-从开始-新消费者-引导-服务器 当我在kafka streams应用程序运行时同时运行消费者时,我会看到数据,但如果我停止消费者并在几分钟后再次运行,我不会看到任何数据。几乎没有可能: 1) 这是因为Ka

  • 因为我是新的Kafka,所以我能够从文件中读取记录,并通过生产者将消息发送到Kafka主题,但不能通过消费者消费相同的主题。 注意:您可以从任何文本文件中读取数据,我使用的是Kafka2.11-0.9。0.0版本 这是我的密码: 下面是输出:

  • 下面的json数据示例 下面的错误消息 线程“main”org.apache.spark.sql.analysisException中出现异常:未能找到数据源:Kafka。请按照“结构化流+Kafka集成指南”的部署部分部署应用程序。;在org.apache.spark.sql.execution.datasources.datasource$.lookupdatasource(datasourc

  • 在我们的docker-swarm中运行kafka connect,使用以下撰写文件: kafka connect节点成功启动,我可以设置任务并查看这些任务的状态······ 我是否在撰写文件或任务配置中缺少某些配置?