jackson.databind.JsonNode имеет (), возвращая true для пустых полей (когда это не должно) - PullRequest
0 голосов
/ 07 мая 2019

при переборе списка JSONNODES, например,

 for(JsonNode result: results){
   if (predicate==Predicate.GREATER_THAN && result.has("JarVersion")){
        //gets in here even though 'JarVersion' is null
        if(result.get("JarVersion").textValue().compareTo(version) > 0)
          //fails here because nulls pass through

по какой-то причине, даже если result.get ("JarVersion") возвращает значение null, проходит проверку result.has ().

Есть ли проблема с функцией has () этой библиотеки?

Я посмотрел на него и на интерфейсе все, что он делает, это results.get(fieldName) != null, но есть много нулевых случаев, которые проходят (и ломают) мой код

...