Как вывести список тем с сервера kafka, используя вызов API в Springboot - PullRequest
0 голосов
/ 29 мая 2019

Мне нужно создать вызов API для вывода списка тем с сервера kafka. Но я не могу получить сообщения, опубликованные по этим темам.

Я пытался использовать ObjectMapper для преобразования значения в строку и его воспроизведения, но все равно не получилось.

Пожалуйста, обратитесь к моему коду:

@GetMapping("/publish/listoftopics")

public String listoftopics(String message) throws JsonProcessingException
{
     `Map<String, List<PartitionInfo> > topics;`
      Properties props = new Properties();
      props.put("bootstrap.servers", "127.0.0.1:9092");
      props.put("key.deserializer",                                         
          "org.apache.kafka.common.serialization.StringDeserializer");
      props.put("value.deserializer",                                                   
          "org.apache.kafka.common.serialization.StringDeserializer");

      KafkaConsumer<String, String> consumer = new KafkaConsumer
                                          <String,String>(props);
      topics = consumer.listTopics();
      consumer.close();
      String jsonString = "";        

      ObjectMapper mapper = new ObjectMapper();
      mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
      try {
            jsonString = mapper.writeValueAsString(topics);
          }
      catch (JsonProcessingException e)
         {                 
            e.printStackTrace();    
          }
       return jsonString;
}

Фактический результат: {"OrderDetails": [{}]} (название темы с пустым ключом)

Ожидаемый результат: Название темы со значением ключа

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...