Spring boot 无法使用传入消息调用侦听器方法,并且没有为ConsumerRecord退出

Spring boot 无法使用传入消息调用侦听器方法,并且没有为ConsumerRecord退出,spring-boot,apache-kafka,spring-kafka,Spring Boot,Apache Kafka,Spring Kafka,下面是我对kafka侦听器的方法定义,如果有效负载接收null或空字符串,我想我会得到下面的错误。。。你能帮忙吗 @KafkaListener(topics = "${kafka.consumer-topic-name.reservation}", groupId = "${kafka.consumer-group-id.test}", containerFactory = "kafkaListenerContainerFact

下面是我对kafka侦听器的方法定义,如果有效负载接收null或空字符串,我想我会得到下面的错误。。。你能帮忙吗

 @KafkaListener(topics = "${kafka.consumer-topic-name.reservation}", groupId = "${kafka.consumer-group-id.test}",
        containerFactory = "kafkaListenerContainerFactory",autoStartup = "${kafka.auto-start.consumer.tets}")
public void consumeReservation(String payload, @Header(KafkaHeaders.RECEIVED_TOPIC) String topic,
                               @Header(KafkaHeaders.RECEIVED_MESSAGE_KEY) String kafkaKey) {}

[org.springframework.kafka.KafkaListenerEndpointContainer #0-0-C-1] ERROR o.s.k.l.SeekToCurrentErrorHandler - Backoff none exhausted for ConsumerRecord(topic = test_topic, partition = 0, leaderEpoch = 2, offset = 453473, CreateTime = 1601962346576, serialized key size = 41, serialized value size = -1, headers = RecordHeaders(headers = [RecordHeader(key = OPERATION, value = [68, 69, 76, 69, 84, 69]), RecordHeader(key = __Key_TypeId__, value = [99, 108, 75, 101, 121])], isReadOnly = false), key = {
"orgId": "1",
"orderId": "U4000024004"}, value = null)
org.springframework.kafka.listener.ListenerExecutionFailedException:无法对传入消息调用侦听器方法 端点处理程序详细信息: 方法[public void com.demo.test.analytics.testanalytics.consumer.FLReservationKafkaConsumer.consumerreservation(java.lang.String,java.lang.String,java.lang.String)] Bean[com.demo.test.analytics.testanalytics.consumer.flreservationkafkanconsumer@731702d1]; 嵌套异常为org.springframework.messaging.handler.annotation.support.MethodArgumentNotValidException:无法解析public void com.demo.test.analytics.testanalytics.consumer.flReservationKafkanConsumer.ConsumerReservation(java.lang.String、java.lang.String、java.lang.String)中索引0处的方法参数:1个错误:[对象“有效负载”中的错误:代码[];参数[]; 默认消息[有效负载值不得为空] ],failedMessage=GenericMessage[payload=org.springframework.kafka.support.KafkaNull@2d99561c,头={ Key_TypeId=[B@19a2dc5f,kafka_offset=453473,OPERATION=[B@7d75c01a,kafka_consumer=org.apache.kafka.clients.consumer.KafkaConsumer@363f44ef,kafka_timestatype=CREATE_TIME,kafka_receivedPartitionId=0,kafka_receivedMessageKey={ “orgId”:“1”, “订单ID”:“U4000024004” },kafka_receivedTopic=test_1订单,kafka_ReceivedTime Stamp=1601962346576,kafka_组id=reservation_组id }];嵌套异常为org.springframework.messaging.handler.annotation.support.MethodArgumentNotValidException:无法解析public void com.demo.test.analytics.testanalytics.consumer.flReservationKafkanConsumer.ConsumerReservation(java.lang.String,java.lang.String,java.lang.String)中索引0处的方法参数:1个错误:[对象“有效负载”中的错误:代码[];参数[]; 默认消息[有效负载值不得为空] ], failedMessage=GenericMessage[payload=org.springframework.kafka.support.KafkaNull@2d99561c,头={ Key_TypeId=[B@19a2dc5f,kafka_offset=453473,OPERATION=[B@7d75c01a,kafka_consumer=org.apache.kafka.clients.consumer.KafkaConsumer@363f44ef,kafka_timestatype=CREATE_TIME,kafka_receivedPartitionId=0,kafka_receivedMessageKey={ “orgId”:“1”, “订单ID”:“U4000024004” },kafka_receivedTopic=test_1订单,kafka_ReceivedTime Stamp=1601962346576,kafka_组id=reservation_组id }] 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.decorateException(KafkaMessageListenerContainer.java:1925) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeErrorHandler(KafkaMessageListenerContainer.java:1913) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeRecordListener(KafkaMessageListenerContainer.java:1812) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeWithRecords(KafkaMessageListenerContainer.java:1739) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokereRecordListener(KafkaMessageListenerContainer.java:1636) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeListener(KafkaMessageListenerContainer.java:1366) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.pollAndInvoke(KafkaMessageListenerContainer.java:1082) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.run(KafkaMessageListenerContainer.java:990) 位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 在java.util.concurrent.FutureTask.run(FutureTask.java:266)处 运行(Thread.java:748) 原因:org.springframework.messaging.handler.annotation.support.MethodArgumentNotValidException:无法解析public void com.demo.test.analytics.testanalytics.consumer.flReservationKafkanconSumer.ConsumerReservation(java.lang.String,java.lang.String,java.lang.String)中索引0处的方法参数:1个错误:[对象“有效负载”中的错误:代码[];参数[]; 默认消息[有效负载值不得为空] ] 位于org.springframework.messaging.handler.annotation.support.PayloadMethodArgumentResolver.resolveArgument(PayloadMethodArgumentResolver.java:122) 位于org.springframework.kafka.annotation.KafkaListenerAnnotationBeanPostProcessor$KafkaNullAwarePayloadArgumentResolver.resolveArgument(KafkaListenerAnnotationBeanPostProcessor.java:901) 位于org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:117) 位于org.springframework.messaging.handler.invocation.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:148) 位于org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:116) 位于org.springframework.kafka.listener.adapter.handleAdapter.invoke(handleAdapter.java:48) 位于org.springframework.kafka.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:329) 位于org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:86) 位于org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:51) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeOnMessage(KafkaMessageListenerContainer.java:1880) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeOnMessage(KafkaMessageListenerContainer.java:1862) 位于org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeRecor