From 0b8a760b5afc4559838309a831a8e2be7bf17aee Mon Sep 17 00:00:00 2001 From: Soby Chacko Date: Wed, 2 Jan 2019 19:10:48 -0500 Subject: [PATCH] Fix NPE in Kafka Streams binder Fixing an NPE when type for the binder is not explicitly provided as a configuration. Resolves #516 Resolves #524 Polishing --- .../streams/KafkaStreamsBinderSupportAutoConfiguration.java | 4 ++-- .../cloud/stream/binder/kafka/KafkaBinderTests.java | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/spring-cloud-stream-binder-kafka-streams/src/main/java/org/springframework/cloud/stream/binder/kafka/streams/KafkaStreamsBinderSupportAutoConfiguration.java b/spring-cloud-stream-binder-kafka-streams/src/main/java/org/springframework/cloud/stream/binder/kafka/streams/KafkaStreamsBinderSupportAutoConfiguration.java index 5f4fb74d7..49651ee34 100644 --- a/spring-cloud-stream-binder-kafka-streams/src/main/java/org/springframework/cloud/stream/binder/kafka/streams/KafkaStreamsBinderSupportAutoConfiguration.java +++ b/spring-cloud-stream-binder-kafka-streams/src/main/java/org/springframework/cloud/stream/binder/kafka/streams/KafkaStreamsBinderSupportAutoConfiguration.java @@ -78,9 +78,9 @@ public class KafkaStreamsBinderSupportAutoConfiguration { for (Map.Entry entry : binderConfigurations.entrySet()) { final BinderConfiguration binderConfiguration = entry.getValue(); final String binderType = binderConfiguration.getBinderType(); - if (binderType.equals(KSTREAM_BINDER_TYPE) || + if (binderType != null && (binderType.equals(KSTREAM_BINDER_TYPE) || binderType.equals(KTABLE_BINDER_TYPE) || - binderType.equals(GLOBALKTABLE_BINDER_TYPE)) { + binderType.equals(GLOBALKTABLE_BINDER_TYPE))) { Map binderProperties = new HashMap<>(); this.flatten(null, binderConfiguration.getProperties(), binderProperties); environment.getPropertySources().addFirst(new MapPropertySource("kafkaStreamsBinderEnv", binderProperties)); diff --git a/spring-cloud-stream-binder-kafka/src/test/java/org/springframework/cloud/stream/binder/kafka/KafkaBinderTests.java b/spring-cloud-stream-binder-kafka/src/test/java/org/springframework/cloud/stream/binder/kafka/KafkaBinderTests.java index be7afc4a2..e73ebd750 100644 --- a/spring-cloud-stream-binder-kafka/src/test/java/org/springframework/cloud/stream/binder/kafka/KafkaBinderTests.java +++ b/spring-cloud-stream-binder-kafka/src/test/java/org/springframework/cloud/stream/binder/kafka/KafkaBinderTests.java @@ -35,7 +35,6 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; import com.fasterxml.jackson.databind.ObjectMapper; - import org.apache.kafka.clients.admin.AdminClient; import org.apache.kafka.clients.admin.AdminClientConfig; import org.apache.kafka.clients.admin.CreateTopicsResult;