Json Objekt leeres Array beim lesen

OnDemand

Top Contributor
Hallo zusammen,

ich habe eine externe API angebunden, die mir ein leeres Array gibt, wenn die "Unit" nicht hinterlegt ist.
Wenn ich aber eine Unit übertragen will, muss ich ein Objekt senden, kein Array.

Kann mir jemand sagen wie ich damit umgehen kann? Wenn ich eine List mache, bekomme ich beim lesen keinen Fehler wenn UNIT leer ist. Mach ich aber keine List, bekomme ich (im Falle dass Unit null ist) eine Fehlermeldung.

Hier mal die json:
Unit ist nicht hinterlegt, die API sendet:
JSON:
 "unit": [],
     "unit_price": {...

Wenn ich aber eine unit hinterlegen will, muss ich wie folgt senden:
JSON:
 "unit": {
        "name": "meinName",
    },
    "unit_price": {....



Java:
@JsonProperty("unit")
private List<Unit> unitList =new ArrayList<>();

@JsonProperty("unit")
private  Unit unit;
 

OnDemand

Top Contributor
Hm hab doch nochmal was hierzu. Es kann nun sein, dass UNIT leer ist (dann kommt leeres Array) oder aber es ist nicht leer, dann kommt das Objekt als nicht Array. Wie kann ich das nun handlen?
 

OnDemand

Top Contributor
bin auch der Meinung, dass die API das falsch ausgibt. Ruf morgen beim Anbieter an, sonst mach ich es wie folgt.Sollte klappen

Code:
  ObjectMapper mapper = new ObjectMapper();
            mapper.enable(DeserializationFeature.ACCEPT_EMPTY_ARRAY_AS_NULL_OBJECT);

            List<MyObject> myObjects = mapper.readValue(response.getBody(), new TypeReference<List<MyObject>>() {
            });
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Server Antwort enthält JSON Objekt/Array Netzwerkprogrammierung 8
T JSON-Objekte richtig parsen Netzwerkprogrammierung 8
C JSON, API ... Anfänger braucht eure Hilfe Netzwerkprogrammierung 10
X Response eines RESTful-Service mit JSON Netzwerkprogrammierung 8
F Neuer Json aus teilen eines vorhandenen Json Netzwerkprogrammierung 0
F GSON wenn das Json verschiedene Klassen enthält Netzwerkprogrammierung 1
J Json von Html request einlesen Netzwerkprogrammierung 0
O Client zwischen XML und JSON auswählen lassen Netzwerkprogrammierung 2
C Android: Json-POST Request zu REST Webservice Netzwerkprogrammierung 2
B Authentifikation und anschliesendes auslesen von JSON Netzwerkprogrammierung 2
J Objekt mit RSA und AES verschlüsseln und entschlüsseln HILFE Netzwerkprogrammierung 4
I Socket ObjectOutputStream-Socket: Objekt wird falsch übertragen Netzwerkprogrammierung 2
L Java RMI Objekt konsistenz Netzwerkprogrammierung 1
P RMI - Neue eigene Instanz für jeden Aufruf auf nicht serialisierbares Objekt - wie? Netzwerkprogrammierung 0
R RMI und Entferntes Objekt (EO) Netzwerkprogrammierung 0
N Selbes URL Objekt für alle Requests nutzen Netzwerkprogrammierung 7
B udp erkennen um welches objekt es sich handelt / max size Netzwerkprogrammierung 5
S Socket Client liest leeres Objekt Netzwerkprogrammierung 10
D Remote-Objekt-Server : Alternative Methodenaufruflogik zu Reflection und hart codiert Netzwerkprogrammierung 5
K RMI Angemeldetes Objekt nicht aktuell? Netzwerkprogrammierung 9
D [CORBA] Eigenes Objekt in idl? undefined type Netzwerkprogrammierung 5
M Objekt über Object-Stream, empfange "alte" Daten Netzwerkprogrammierung 2
M Objekt über socket senden/empfangen Netzwerkprogrammierung 3
H Objekt von JSP an Servlet übergeben Netzwerkprogrammierung 4
T Wieso ist mein Objekt leer? Netzwerkprogrammierung 6
L RMI-Objekt zwischen zwei RMI-Servern kopieren Netzwerkprogrammierung 2
S Objekt Felder versenden Netzwerkprogrammierung 5
W Objekt über Socket übertragen Netzwerkprogrammierung 14
G Problem bei Objekt senden von server zu client Netzwerkprogrammierung 6
P RMI - Objekt als Rückgabeparameter Netzwerkprogrammierung 3
M RMI - Ein Objekt für Alle? Netzwerkprogrammierung 5
H Versenden von Objekt Netzwerkprogrammierung 2
J Prblem, wenn im verschickten Objekt ein Array ist Netzwerkprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben