# JAVA: Create Kafka Producer with a Callback

Published 2022-12-03

This tutorial explains to you how to create a Kafka producer with a callback function from Java. This tutorial has an example as well.

A nice job to do is to write messages from an application, agent, etc to a Kafka topic. In this tutorial, I will explain to you how to write a message from a Java application. After the message is sent a callback function could be called automatically, and you can get some useful information from Kafka server.

First of all you must install a Kafka server in order to test it. For this example you don't need to install a Kafka cluster.

So, on my environment you have some prerequisites in order to test the Java code below.


  1. From the machine you run the Java client you must see the private Kafka server sockets (hostname:IP)

  2. You must have a Kafka topic named my-topic10

-- List all topics (prints only topic names)

kafka-topics.sh --list --zookeeper zookeeper1:2181/kafka

And now look at the code.

In pom.xml we must have :


And the class which create the Kafka producer with key looks like this :

This class is almost the same as the one from a consumer without callback.

When you run the Java class, you must see something like this:

As you can see, you can read some information from Kafka server/ Kafka broker.