diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/util/JsonUtils.java b/openmetadata-service/src/main/java/org/openmetadata/service/util/JsonUtils.java index 0840d45bf36..c64c57eb2f3 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/util/JsonUtils.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/util/JsonUtils.java @@ -517,14 +517,17 @@ public final class JsonUtils { public static T extractValue(String jsonResponse, String... keys) { JsonNode jsonNode = JsonUtils.readTree(jsonResponse); - - // Traverse the JSON structure using keys for (String key : keys) { jsonNode = jsonNode.path(key); } - - // Extract the final value - return JsonUtils.treeToValue(jsonNode, (Class) getValueClass(jsonNode)); + if (jsonNode.isMissingNode() || jsonNode.isNull()) { + return null; + } + try { + return JsonUtils.treeToValue(jsonNode, (Class) getValueClass(jsonNode)); + } catch (Exception e) { + return null; + } } public static T extractValue(JsonNode jsonNode, String... keys) {