Javier Irrazábal :
Necesito conseguir el valor en este arrayNode (Por si acaso, sé que va a ser un solo valor en la matriz - Por favor, no me preguntes por qué, es la forma en que estoy recibiendo es):
"data": {
"services": [
"[email protected]"
]
}
Me estoy quedando esta porción de código:
ArrayNode arrNode = (ArrayNode) new ObjectMapper().readTree(resBody).path("data").get("services");
if (arrNode.isArray()) {
for (final JsonNode objNode : arrNode) {
serviceId = objNode.get(0).textValue();
log.info("serviceId: " + serviceId + " is available");
}
}
Me estoy haciendo un java.lang.NullPointerException: nulo en esta línea: = serviceId objNode.get (0) .textValue ();
Por favor, ¿alguien puede echar un vistazo a esto? Sería muy apreciada.
Jon Skeet:
Que está llamando objNode.get(0)
, lo que recuperar el primer valor de una matriz si objNode
eran un nodo de la matriz - pero no lo es, es el nodo dentro de la matriz. JsonNode.get(int)
está documentada para devolver null si el nodo no es una matriz.
Solo necesitas:
serviceId = objNode.textValue();