Предыдущее примечание: я довольно новичок в Kafka.
Я пытаюсь получить все схемы из реестра схем, но я не могу сделать это только с помощью клиента реестра схем.Это работает, только если до этого я создаю экземпляр KafkaConsumer.
Не могу понять почему.Вот код (с потребителем на месте).
ConsumerConfig - это просто класс со всеми необходимыми конфигурациями.Включая URL-адрес реестра схем.
Consumer<String, String> consumer = new KafkaConsumer<String, String>(ConsumerConfig.get());
CachedSchemaRegistryClient client = new CachedSchemaRegistryClient(ConsumerConfig.getSchemaRegistryURL(), 30);
Collection<String> listOfSubjects = client.getAllSubjects();
consumer.close();
Без потребителя я получаю:
io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException: Нет содержимого длякарта из-за конца ввода
С потребителем все отлично работает.Хотелось бы, чтобы кто-то пролил некоторый свет на то, почему это происходит, если я не вижу причин для того, чтобы мне нужно было подключаться к фактическому кластеру Kafka через потребителя, чтобы получить доступ к реестру схем, который находится на другой конечной точке.