diff --git a/spring-cloud-stream-binder-kafka/src/main/java/org/springframework/cloud/stream/binder/kafka/KafkaMessageChannelBinder.java b/spring-cloud-stream-binder-kafka/src/main/java/org/springframework/cloud/stream/binder/kafka/KafkaMessageChannelBinder.java index c77a870f5..add27a2c1 100644 --- a/spring-cloud-stream-binder-kafka/src/main/java/org/springframework/cloud/stream/binder/kafka/KafkaMessageChannelBinder.java +++ b/spring-cloud-stream-binder-kafka/src/main/java/org/springframework/cloud/stream/binder/kafka/KafkaMessageChannelBinder.java @@ -314,7 +314,9 @@ public class KafkaMessageChannelBinder extends List partitionsFor = producer .partitionsFor(destination.getName()); producer.close(); - ((DisposableBean) producerFB).destroy(); + if (this.transactionManager == null) { + ((DisposableBean) producerFB).destroy(); + } return partitionsFor; }, destination.getName()); this.topicsInUse.put(destination.getName(),