Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.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
ApacheKafka streams连接:java.lang.ClassCastException:位于org.Apache.Kafka.streams.state.StateSerdes.valueFrom(StateSerdes.java:160)_Java_Apache Kafka_Apache Kafka Streams - Fatal编程技术网

ApacheKafka streams连接:java.lang.ClassCastException:位于org.Apache.Kafka.streams.state.StateSerdes.valueFrom(StateSerdes.java:160)

ApacheKafka streams连接:java.lang.ClassCastException:位于org.Apache.Kafka.streams.state.StateSerdes.valueFrom(StateSerdes.java:160),java,apache-kafka,apache-kafka-streams,Java,Apache Kafka,Apache Kafka Streams,我正在尝试执行卡夫卡流连接。我有两条客户和订单流。代码段如下所示: final String customerTopic = Constants.CUSTOMER_TOPIC; final String orderTopic = Constants.ORDER_TOPIC; Serde<Customer> customerSerde = Serdes.serdeFrom(new CustomerSerializer(), new CustomerDeseri

我正在尝试执行卡夫卡流连接。我有两条客户和订单流。代码段如下所示:

    final String customerTopic = Constants.CUSTOMER_TOPIC;
    final String orderTopic = Constants.ORDER_TOPIC;

    Serde<Customer> customerSerde = Serdes.serdeFrom(new CustomerSerializer(), new CustomerDeserializer());
    Serde<Order> orderSerde = Serdes.serdeFrom(new OrderSerializer(), new OrderDeserializer());
    Serde<Long> longSerde = Serdes.Long();

    KStream<Long, Customer> customerStream = builder.stream(customerTopic, Consumed.with(longSerde, customerSerde));
    KStream<Long, Order> orderStream = builder.stream(orderTopic, Consumed.with(longSerde, orderSerde))
            .selectKey((k, v) -> v.getCustomerId());

    KStream<Long, CustomerOrder> joinedStream = orderStream.join(customerStream,
            (order, customer) -> new CustomerOrder(customer, order), JoinWindows.of(Duration.ofSeconds(120)),
            Joined.with(longSerde, orderSerde, customerSerde));

在反序列化方法中记录消息如何?根据错误,您使用了来自某些客户数据的订单,这些客户数据使用相同的application.id进行不同的联接。为每个联接使用唯一的application.id来解决此问题。在反序列化方法中记录消息如何?根据错误,您使用了来自某些客户数据的订单,这些客户数据使用相同的application.id进行不同的联接。为每个联接使用唯一的application.id来解决问题。
java.lang.ClassCastException: poc.kafka.domain.Order cannot be cast to poc.kafka.domain.Customer
    at poc.kafka.domain.serialization.CustomerDeserializer.deserialize(CustomerDeserializer.java:12)
    at poc.kafka.domain.serialization.CustomerDeserializer.deserialize(CustomerDeserializer.java:1)
    at org.apache.kafka.streams.state.StateSerdes.valueFrom(StateSerdes.java:160)
    at org.apache.kafka.streams.state.internals.MeteredWindowStoreIterator.next(MeteredWindowStoreIterator.java:56)
    at org.apache.kafka.streams.state.internals.MeteredWindowStoreIterator.next(MeteredWindowStoreIterator.java:26)
    at org.apache.kafka.streams.kstream.internals.KStreamKStreamJoin$KStreamKStreamJoinProcessor.process(KStreamKStreamJoin.java:97)
    at org.apache.kafka.streams.processor.internals.ProcessorNode.process(ProcessorNode.java:117)
    at org.apache.kafka.streams.processor.internals.ProcessorContextImpl.forward(ProcessorContextImpl.java:201)
    at org.apache.kafka.streams.processor.internals.ProcessorContextImpl.forward(ProcessorContextImpl.java:180)
    at org.apache.kafka.streams.processor.internals.ProcessorContextImpl.forward(ProcessorContextImpl.java:133)
    at org.apache.kafka.streams.kstream.internals.KStreamJoinWindow$KStreamJoinWindowProcessor.process(KStreamJoinWindow.java:55)
    at org.apache.kafka.streams.processor.internals.ProcessorNode.process(ProcessorNode.java:117)
    at org.apache.kafka.streams.processor.internals.ProcessorContextImpl.forward(ProcessorContextImpl.java:201)
    at org.apache.kafka.streams.processor.internals.ProcessorContextImpl.forward(ProcessorContextImpl.java:180)
    at org.apache.kafka.streams.processor.internals.ProcessorContextImpl.forward(ProcessorContextImpl.java:133)
    at org.apache.kafka.streams.processor.internals.SourceNode.process(SourceNode.java:87)
    at org.apache.kafka.streams.processor.internals.StreamTask.process(StreamTask.java:366)
    at org.apache.kafka.streams.processor.internals.AssignedStreamsTasks.process(AssignedStreamsTasks.java:199)
    at org.apache.kafka.streams.processor.internals.TaskManager.process(TaskManager.java:420)
    at org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:890)
    at org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:805)
    at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:774)