• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Problem z deserializacją JSON'a rozpoczynającego się od tablicy.

0 głosów
349 wizyt
pytanie zadane 23 maja 2022 w Java przez blofeld Użytkownik (700 p.)

Hej.

Prośba.

Robię tutorial z API. 

Zatrzymałem się na problemie validacji odpowiedzi przez 

matchesJsonSchemaInClasspath();

Chodzi o to, że odpowiedź jaką mam z servera otrzymuje w ramach tablicy. 

Sam plik jest aż żenująco prosty, tzn :

[
  {
    "id": 1,
    "title": "json-server",
    "author": "typicode"
  }
]

Nie mam problemu z jego odczytem i wyciągnięciem danych jednak wyżej wspomniana asercja jako współargumetnu nie przyjmuje obiektu tablicy ! Tym samym, żeby ją zrealizować muszę jakoś zamienić pierwszy element tablicy na JSONa ale tu się zaczynam gubić. 

1 odpowiedź

0 głosów
odpowiedź 23 maja 2022 przez blofeld Użytkownik (700 p.)
Dobra.

Poszło :-)

Pokonałem problem konfiguracją kodu w ramach samego json.schema.

Dlaczego ja ZAWSZE znajduję rozwiązania, dopiero kiedy publicznie o nie zapytam ?
komentarz 23 maja 2022 przez Oscar Nałogowiec (29,420 p.)
komentarz 23 maja 2022 przez Wiciorny Ekspert (283,580 p.)
edycja 23 maja 2022 przez Wiciorny

@blofeld, pamiętaj jedynie że ten validator zadziała jedynie jeśli od klienta na drodze http json-format będzie type/text, nie zawsze tak jest, czasmi możę lecieć to po prostu binarnie, chociaz to bardziej w modelu RPC i proto-bufers.
Ale jesli nie będzie 

to nie przejdzie schemat  

BARDZO WAŻNA SPRAWA: Kiedyś na początku drogi jako Junior lata temu nie wiem jak aktualnie biblioteki to uwzględniają, ale w starzych jeszcze to będzie powodowało problem: 
Jest różnica OGROMNA między JSON vs JSON string, java niestety  w przypadku np GSON ( biblioteki, nie wiem czy Jakson też nie ), jeśli pobierzesz, prześlesz stringa przez http lub poddasz go modyfikacji zawsze zwróci Ci JSON-String jest to różnica między czystym JSONem, generalnie problem jest po stronie javy i wbudowanych parserów bo dla JS i clienta to bez znaczenia i kod po tej stronie działa poprawnie i język/framework etc. sobie radzi z tym prawidłowo samemu. 

Podobne pytania

0 głosów
0 odpowiedzi 209 wizyt
pytanie zadane 3 maja 2017 w Java przez diego662 Nowicjusz (120 p.)
0 głosów
1 odpowiedź 335 wizyt
pytanie zadane 11 lutego 2017 w JavaScript przez michal Mądrala (5,560 p.)
0 głosów
1 odpowiedź 303 wizyt
pytanie zadane 6 października 2019 w JavaScript przez Renzov Obywatel (1,220 p.)

93,800 zapytań

142,768 odpowiedzi

323,461 komentarzy

63,420 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...