Есть ли возможность получить номер строки JSON из AvroTypeException?JAVA

Программисты JAVA общаются здесь
Anonymous
Есть ли возможность получить номер строки JSON из AvroTypeException?

Сообщение Anonymous »

Я работаю над валидатором JSON-avro, и он работает нормально. Однако, когда JSON недействителен для схемы avro, я получаю только сообщение «Ожидаемое целое. Получил VALUE_STRING». Это было бы хорошо для небольших файлов JSON, но не для огромных.
Есть ли способ получить конкретную строку JSON, в которой сработало сообщение «Ожидаемое целое. Получил VALUE_STRING»?
Код:
public static boolean validateJson(String json, Schema schema) throws Exception {
InputStream input = new ByteArrayInputStream(json.getBytes());
DataInputStream din = new DataInputStream(input);

try {
DatumReader reader = new GenericDatumReader(schema);
Decoder decoder = DecoderFactory.get().jsonDecoder(schema, din);
reader.read(null, decoder);
return true;
} catch (AvroTypeException e) {
System.out.println(e.getMessage());
return false;
}
}

Я ожидаю что-то вроде «строка 3: Ожидаемое целое число. Получено VALUE_STRING».
Файл pom.xml:


4.0.0

org.example
maventest
1.0-SNAPSHOT


21
21
UTF-8





Подробнее здесь: https://stackoverflow.com/questions/790 ... eexception

Вернуться в «JAVA»