Есть ли способ в Java, чтобы получить номер строки, используя jsonpointer из файла json - PullRequest
0 голосов
/ 04 июля 2019

У меня есть случай, когда у меня есть файл jsonpointer и файл swagger json.Мне нужно получить номер строки, на которую указывает jsonpointer.

Есть ли способ сделать это, я использовал ObjectMapper, я получаю jsonNode, я также видел в коде, JsonParser имеетИнформация о номере строки при разборе файла json позволяет найти номер строки для каждого ObjectNode или просто передать jsonPointer и получить номер строки.

Ниже приведен код:

public class JsonPointerUtil {
static ObjectMapper om = new ObjectMapper();
private JsonNode jsonNode;

public JsonPointerUtil(File json) throws IOException {
    jsonNode = com.xyz.util.JsonPointerUtil.om.readTree(json);
}

public String getJsonBlockForPointer(String jsonPtr) {
    if (StringUtils.isEmpty(jsonPtr))
        return null;
    JsonNode at = jsonNode.at(jsonPtr);
    return at.toString();
}

}

Таким образом, в методе getJsonBlockForPointer, используя указатель, я получаю узел json, узел json - это точный блок json, на который указывает указатель, мне также нужен номер строки указанного блока json, Есть ли способ, которым я могу получить это.

Мое требование: номер строки используется кодом стороны пользовательского интерфейса, есть несколько приложений пользовательского интерфейса, которые вызывают один и тот же бэкэнд-сервис, На стороне пользовательского интерфейса библиотека jsonPointer даетмне всю информацию (line, col no, agiainst для каждого jsonPointer), но, поскольку несколько приложений пользовательского интерфейса используют один и тот же сервис, я хочу отправить всю информацию избэкенд.

...