Zmieniam bibliotekę JSON z org.json na Jackson i chcę przeprowadzić migrację następującego kodu:
JSONObject datasets = readJSON(new URL(DATASETS));
JSONArray datasetArray = datasets.getJSONArray("datasets");
Teraz w Jackson mam:
ObjectMapper m = new ObjectMapper();
JsonNode datasets = m.readTree(new URL(DATASETS));
ArrayNode datasetArray = (ArrayNode)datasets.get("datasets");
Jednak nie podoba mi się tam obsada, czy jest taka możliwość ClassCastException
? Czy istnieje metoda równoważna getJSONArray
in, org.json
aby mieć właściwą obsługę błędów w przypadku, gdy nie jest to tablica?
FAIL_ON_UNKNOWN_PROPERTIES
aby po prostu uzyskać wartości null zwracane w nieużywanych polach. Ale to oczywiście tylko opcja, jeśli zestaw nazw pól jest stosunkowo ograniczony.