gpt4 book ai didi

java.lang.ClassCastException : java. lang.String 无法转换为 org.apache.avro.generic.GenericRecord

转载 作者:行者123 更新时间:2023-12-01 16:39:32 26 4
gpt4 key购买 nike

我尝试使用 KafkaConsumer 来消费记录,但出现以下异常

public void kafkaConsumerRun() {
Properties prop = getProperties();
try (KafkaConsumer<String, GenericRecord> kafkaConsumer = new KafkaConsumer<>(prop)) {
kafkaConsumer.subscribe(Arrays.asList(topicName));
Schema schema = Common.SCHEMA;
log.info("SCHEMA = " + schema.toString());
Map<String, Object> eventMap = new LinkedHashMap<>();
while (true) {
ConsumerRecords<String, GenericRecord> records = kafkaConsumer.poll(Duration.ofSeconds(pollInterval));
JSONObject payloadJson = new JSONObject();
if (records.count() > 0) {
log.info(records.count() + " records in partition");
for (ConsumerRecord<String, GenericRecord> rec : records) {
GenericRecord record = SpecificData.get().deepCopy(schema, rec.value());
log.info("Priting Events before camel case conversion : " + record.toString());
for (Iterator<Schema.Field> fieldItr = record.getSchema().getFields().iterator(); fieldItr
.hasNext();) {
String fieldName = fieldItr.next().name();
Object value = record.get(fieldName);
getFieldName(fieldName, eventMap, value);
}
log.info("JSON String: " + new JSONObject(eventMap).toString());
callOrchestrator(eventMap, payloadJson);
}
}
}
} catch (Exception ex) {
log.error("Exception Caught: ", ex);
}

最佳答案

异常堆栈跟踪应该准确地指出哪一行是错误的,并且它准确地告诉您发生了什么:有一个 String 实例,您正试图将其转换为 通用记录。确保当您将对象作为 Object 传递时,在需要时将其转换回正确的类型。

关于java.lang.ClassCastException : java. lang.String 无法转换为 org.apache.avro.generic.GenericRecord,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61891891/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com