Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将Apache Camel中的JSON记录转换为Avro?_Java_Scala_Apache Camel_Avro - Fatal编程技术网

Java 如何将Apache Camel中的JSON记录转换为Avro?

Java 如何将Apache Camel中的JSON记录转换为Avro?,java,scala,apache-camel,avro,Java,Scala,Apache Camel,Avro,我们正在向ApacheCamel迈出第一步,我们已经从API中获得了一些成功。我们需要使用API中的JSON并将记录转换为Avro格式,然后将它们生成到Kafka 这是我们定义的部分路线。MyAvroToolsCreatedClass是我使用以下命令创建的类: java-jar~/Downloads/avro-tools-1.9.2.jar编译模式MyAvroToolsCreatedClass.avsc. 在我们尝试将数据封送到Avro格式之前,路由工作正常。我们收到的错误是: java.lan

我们正在向ApacheCamel迈出第一步,我们已经从API中获得了一些成功。我们需要使用API中的JSON并将记录转换为Avro格式,然后将它们生成到Kafka

这是我们定义的部分路线。
MyAvroToolsCreatedClass
是我使用以下命令创建的类:

java-jar~/Downloads/avro-tools-1.9.2.jar编译模式MyAvroToolsCreatedClass.avsc.

在我们尝试将数据封送到Avro格式之前,路由工作正常。我们收到的错误是:

java.lang.ClassCastException:java.util.LinkedHashMap不能强制转换为org.apache.avro.generic.IndexedRecord

谁能解释一下我做错了什么

提前谢谢

.to(
https(
“{{the.url}}?authMethod=Basic&authenticationPreemptive=true&authUsername={{the.user}}}&authPassword={{{the.pass}}}&httpMethod=POST”
)
)
unmarshal先生
.json
.transform(简单(“${body[data]}”))
.拆分(正文)
.setHeader(KafkaConstants.KEY,简单(${body[id]})))
.log(“正文为-${body}”)
.log(“键是-${body[id]}”)
元帅
.avro(类[MyAvroToolsCreatedClass].getName)