从融合架构注册表中检索架构

时间:2020-04-08 20:25:53

标签: java apache-kafka confluent-schema-registry

我正在尝试从架构注册表中检索给定kafka主题的架构主题版本。我可以使用client.register(schema-name, schema)成功发布新版本,但不确定如何获取版本。我在下面使用curl请求进行了尝试,但结果立即达到-1(空)。

CachedSchemaRegistryClient client = new CachedSchemaRegistryClient(schemaRegistryUrl, 20);

// curl -X GET http://schema.registry.url:8888/subjects/{topic}/versions/

String command = "curl -X GET --header 'Accept: application/vnd.schemaregistry.v1+json' 'https://schema.registry.url:8888/api/schema-proxy/subjects/mytopic-value/versions'";
Process process = Runtime.getRuntime().exec(command);

Reader reader = new InputStreamReader(process.getInputStream());
int result;
while ((result = reader.read()) != -1){ // Nothing printed
    System.out.println(result);
}

如何解决此GET请求,或者更好的是,如何使用模式注册表client来检索模式?

1 个答案:

答案 0 :(得分:0)

使用以下方法找出答案:

SchemaMetadata sm = client.getLatestSchemaMetadata(schemaName);
System.out.println(sm.getSchema());