diff --git a/extensions/kafka-streams/runtime/src/main/java/io/quarkus/kafka/streams/runtime/devui/KafkaStreamsJsonRPCService.java b/extensions/kafka-streams/runtime/src/main/java/io/quarkus/kafka/streams/runtime/devui/KafkaStreamsJsonRPCService.java index 24f25e424e5c2..3b2c00d9c1a70 100644 --- a/extensions/kafka-streams/runtime/src/main/java/io/quarkus/kafka/streams/runtime/devui/KafkaStreamsJsonRPCService.java +++ b/extensions/kafka-streams/runtime/src/main/java/io/quarkus/kafka/streams/runtime/devui/KafkaStreamsJsonRPCService.java @@ -7,6 +7,7 @@ import java.util.regex.Pattern; import java.util.stream.Stream; +import jakarta.enterprise.inject.Instance; import jakarta.inject.Inject; import org.apache.kafka.streams.Topology; @@ -16,11 +17,16 @@ public class KafkaStreamsJsonRPCService { @Inject - Topology topology; + Instance topologyProvider; @NonBlocking public JsonObject getTopology() { - return parseTopologyDescription(topology.describe() != null ? topology.describe().toString() : ""); + var topologyDescription = ""; + if (topologyProvider.isResolvable()) { + final var describe = topologyProvider.get().describe(); + topologyDescription = describe != null ? describe.toString() : ""; + } + return parseTopologyDescription(topologyDescription); } JsonObject parseTopologyDescription(String topologyDescription) {