Maven Coordinates
To enable Reactive Kafka Connector add the following dependency to your project’s pom.xml (see Managing Dependencies).
<dependency>
<groupId>io.helidon.messaging.kafka</groupId>
<artifactId>helidon-messaging-kafka</artifactId>
</dependency>content_copy
Reactive Kafka Connector
Connecting streams to Kafka with Reactive Messaging couldn’t be easier.
Example of connector config:
mp.messaging:
incoming.from-kafka:
connector: helidon-kafka
topic: messaging-test-topic-1
auto.offset.reset: latest
enable.auto.commit: true
group.id: example-group-id
outgoing.to-kafka:
connector: helidon-kafka
topic: messaging-test-topic-1
connector:
helidon-kafka:
bootstrap.servers: localhost:9092
key.serializer: org.apache.kafka.common.serialization.StringSerializer
value.serializer: org.apache.kafka.common.serialization.StringSerializer
key.deserializer: org.apache.kafka.common.serialization.StringDeserializer
value.deserializer: org.apache.kafka.common.serialization.StringDeserializercontent_copy
Example of consuming from Kafka:
@Incoming("from-kafka")
public void consumeKafka(String msg) {
System.out.println("Kafka says: " + msg);
}content_copy
Example of producing to Kafka:
@Outgoing("to-kafka")
public PublisherBuilder<String> produceToKafka() {
return ReactiveStreams.of("test1", "test2");
}content_copy
Don’t forget to check out the examples with pre-configured Kafka docker image, for easy testing: