String Schema

Let’s adjust our producer and consumer code to use a String Schema.

We adjust the Producer as follows to produce the message using a String Schema:

Producer<String> producer = client.newProducer(Schema.STRING)
.topic("persistent://public/default/mynewtopic")
.create();

The message object in send() must be String Type:

for (int i = 0; i < 10; i++) {
    String message = "my-message-" + i;
    MessageId msgID = producer.send(message);
    System.out.println("Publish " + "my-message-" + i + " and message ID " + msgID);
}

We adjust the consumer to use a String Schema.

Consumer consumer = client.newConsumer(Schema.STRING)
.topic("persistent://public/default/stringtopic")
.subscriptionName("mysubscription")
.subscriptionInitialPosition(SubscriptionInitialPosition.Earliest)
.subscribe();

The Schema can be observed in the StreamNative UI.