Kann JSON nicht deserialisieren

Fohnbit

Top Contributor
Hallo,

ich nutze die Google gson 2.8.2 Library.

Ich möchte eine Klasse als JSON speichern und in einem anderen Proghramm dieses JSON laden und die Klasse dabei erzeugen:

Die Klasse Window die ich übergeben möchte:
Java:
public class Window implements java.io.Serializable {

    Window(String windowName) {
        this.windowName = windowName;
    }

    private static final long serialVersionUID = 1068505166493971108L;

    public String windowName = "Fenster Bezeichnungt";
    public String description = "Fenster Beschreibung";

    public DefaultListModel<Point2D> lstModelRU_RealCoordinate = new DefaultListModel<Point2D>();
    public DefaultListModel<Point2D> lstModelLU_RealCoordinate = new DefaultListModel<Point2D>();
    public DefaultListModel<Point2D> lstModelRD_RealCoordinate = new DefaultListModel<Point2D>();
    public DefaultListModel<Point2D> lstModelLD_RealCoordinate = new DefaultListModel<Point2D>();

    public List<Long> timeStamp_RU = new ArrayList<Long>();
    public List<Long> timeStamp_RD = new ArrayList<Long>();
    public List<Long> timeStamp_LU = new ArrayList<Long>();
    public List<Long> timeStamp_LD = new ArrayList<Long>();

    public transient List<BufferedImage> imagesRU = new ArrayList<BufferedImage>();
    public transient List<BufferedImage> imagesLU = new ArrayList<BufferedImage>();
    public transient List<BufferedImage> imagesRD = new ArrayList<BufferedImage>();
    public transient List<BufferedImage> imagesLD = new ArrayList<BufferedImage>();

    public double windowDirectionView = 90;

    public List<Point2D> plySkySelection_RealCoordinate = new ArrayList<Point2D>();

    @Override
    public String toString() {
        return windowName;
    }

  
}

Serialisieren (heißt das so?):
Java:
String json = gson.toJson(window);

Deserialisieren:
Java:
            GsonBuilder gsonBuilder = new GsonBuilder();
            gsonBuilder.registerTypeAdapter(Point2D.class, new LocationDeserializer());
            gsonBuilder.registerTypeAdapter(Point2D.class, new LocationSerializer());
            Gson gson = gsonBuilder.create();
            Window window = gson.fromJson(skyList, Window.class);


....

class LocationSerializer implements JsonSerializer<Point2D> {
    public JsonElement serialize(Point2D t, Type type, JsonSerializationContext jsc) {
        JsonObject jo = new JsonObject();
        jo.addProperty("mX", t.getX());
        jo.addProperty("mY", t.getY());
        return jo;
    }

}

class LocationDeserializer implements JsonDeserializer<Point2D> {
    public Point2D deserialize(JsonElement je, Type type, JsonDeserializationContext jdc) throws JsonParseException {
        JsonObject jo = je.getAsJsonObject();
        Point2D l;
        if (jo.getAsJsonPrimitive("x") == null || jo.getAsJsonPrimitive("y") == null) {
            l = new Point2D.Double(0, 0);

        } else {
            l = new Point2D.Double(jo.getAsJsonPrimitive("x").getAsDouble(), jo.getAsJsonPrimitive("y").getAsDouble());
        }
        return l;
    }

Und das erzeugte JSON:
JSON:
{"windowName":"Beschattung 1","description":"Fenster Beschreibung","lstModelRU_RealCoordinate":{"delegate":[],"listenerList":{}},"lstModelLU_RealCoordinate":{"delegate":[],"listenerList":{}},"lstModelRD_RealCoordinate":{"delegate":[{"x":349.58,"y":3.99},{"x":349.29,"y":25.78},{"x":369.49,"y":56.99},{"x":462.98,"y":64.67},{"x":472.39,"y":61.97},{"x":471.49,"y":41.47},{"x":472.28,"y":35.68},{"x":466.67,"y":22.79},{"x":467.78,"y":5.88},{"x":436.18,"y":3.38}],"listenerList":{}},"lstModelLD_RealCoordinate":{"delegate":[{"x":392.08,"y":-0.03},{"x":391.68,"y":67.47},{"x":497.68,"y":41.79},{"x":504.99,"y":37.19},{"x":484.67,"y":22.37},{"x":483.68,"y":2.38}],"listenerList":{}},"timeStamp_RU":[],"timeStamp_RD":[1499248275135,1499248279599,1499248286920,1499248301462,1499248308319,1499248312975,1499248321966,1499248329166,1499248333735,1499248337679],"timeStamp_LU":[],"timeStamp_LD":[1499248040207,1499248050720,1499248060663,1499248066391,1499248071736,1499248076343],"windowDirectionView":342.0,"plySkySelection_RealCoordinate":[{"x":392.08,"y":-0.03},{"x":392.0579508716128,"y":3.6907904153385243},{"x":349.58,"y":3.99},{"x":349.29,"y":25.78},{"x":369.49,"y":56.99},{"x":391.73127660764055,"y":58.81707246065547},{"x":391.68,"y":67.47},{"x":418.36563582256537,"y":61.00502709506153},{"x":462.98,"y":64.67},{"x":472.39,"y":61.97},{"x":471.77952588938996,"y":48.064756369438356},{"x":497.68,"y":41.79},{"x":504.99,"y":37.19},{"x":484.67,"y":22.37},{"x":483.68,"y":2.38},{"x":392.08,"y":-0.03}]}

Der Fehler:
Code:
Caused by: java.lang.reflect.MalformedParameterizedTypeException
    at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.validateConstructorArguments(Unknown Source)
    at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.<init>(Unknown Source)
    at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.make(Unknown Source)
    at sun.reflect.generics.factory.CoreReflectionFactory.makeParameterizedType(Unknown Source)
    at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Unknown Source)
    at sun.reflect.generics.tree.ClassTypeSignature.accept(Unknown Source)
    at sun.reflect.generics.repository.FieldRepository.getGenericType(Unknown Source)
    at java.lang.reflect.Field.getGenericType(Unknown Source)
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:158)
    at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:100)
    at com.google.gson.Gson.getAdapter(Gson.java:423)
    at com.google.gson.Gson.fromJson(Gson.java:887)
    at com.google.gson.Gson.fromJson(Gson.java:853)
    at com.google.gson.Gson.fromJson(Gson.java:802)
    at com.google.gson.Gson.fromJson(Gson.java:774)
    at com.company.Suntracker.onPropertySkyList(Suntracker.java:946)
    ... 9 more
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Variablen HttpResponse.getBody() wird automatisch org.json Object und kann nicht zu json.simple Object gecastet werden? Java Basics - Anfänger-Themen 7
N JSON - komme nicht weiter Java Basics - Anfänger-Themen 2
I JSON in Objekt umwandeln Java Basics - Anfänger-Themen 3
J JSON mit einem JPanel Java Basics - Anfänger-Themen 3
J Objekte in JSON speichern?? Java Basics - Anfänger-Themen 1
V JSON-Objs aus JSON-Obj filtern und löschen (Manipulation ohne Kenntnis der vollst. Struktur) Java Basics - Anfänger-Themen 12
I JSON / XML Struktur mit Vererbung / Interfaces Java Basics - Anfänger-Themen 0
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
I JSON - cannot deserialize from Object value Java Basics - Anfänger-Themen 16
S JSON einlesen und benutzen Java Basics - Anfänger-Themen 5
HolyFUT JSON String in Java Object schreiben - Anführungszeichen rauskriegen? Java Basics - Anfänger-Themen 17
BATMAN_2008 Jackson adding additional fields to JSON throws java.util.concurrent.CompletionException: Java Basics - Anfänger-Themen 2
I JSON und Interface Java Basics - Anfänger-Themen 3
J Wert in einer json Datei ändern und speichern Java Basics - Anfänger-Themen 3
J Json Datei auslesen Java Basics - Anfänger-Themen 4
J JSON-HashMap Java Basics - Anfänger-Themen 3
P JSON-Array auf Excel-Spalten verteilen? Java Basics - Anfänger-Themen 5
P Ressourcen für JSON & API Informationen? Java Basics - Anfänger-Themen 1
D JSON in JSOUP ELEMENTS Java Basics - Anfänger-Themen 1
M Wie analysiert JSON eine toString-Ausgabe ? Java Basics - Anfänger-Themen 1
F POST-Request mit json - Abfrage mit Java Java Basics - Anfänger-Themen 2
R Value von einem JSON-Objekt ausgeben Java Basics - Anfänger-Themen 4
S JSON Datei schreiben und lesen Java Basics - Anfänger-Themen 3
R JSON Array Java Basics - Anfänger-Themen 4
E Erste Schritte Wie führe ich org.json.jar aus? Java Basics - Anfänger-Themen 6
M JSON Format Java Basics - Anfänger-Themen 5
I JSON Datei in Array umwandeln Java Basics - Anfänger-Themen 1
A JSON Lesen und Schreiben. Java Basics - Anfänger-Themen 3
L Jackson JSON parsen Java Basics - Anfänger-Themen 7
A JSON versenden Java Basics - Anfänger-Themen 2
Y Fehler in Json Datei Java Basics - Anfänger-Themen 4
F JSON null macht mir ein Problem Java Basics - Anfänger-Themen 3
N Suchfeld, JSON Java Basics - Anfänger-Themen 2
F JSON in dokumentierten Format als PDF Java Basics - Anfänger-Themen 3
P JSON-Konfigurationsdatei verwenden: Probleme mit Pfad Java Basics - Anfänger-Themen 1
J JSON Java Basics - Anfänger-Themen 2
F JSON von XBMC Java Basics - Anfänger-Themen 1
Traxter JSON in Java Java Basics - Anfänger-Themen 15
J String aus Json File parsen Java Basics - Anfänger-Themen 6
B Best Practice JSON Datei zerlegen Java Basics - Anfänger-Themen 1
Joew0815 Interface JSON Objekte aus Java Objekten erzeugen Java Basics - Anfänger-Themen 9
C XML und/oder JSON Java Basics - Anfänger-Themen 3
J Funktion um JSON per Post senden/emfangen Java Basics - Anfänger-Themen 3
L Input/Output JSON Objekt abrufen und ausgeben Java Basics - Anfänger-Themen 9
D JSON Java Basics - Anfänger-Themen 4
R JSON - Ausgabe als HTML mit gson Java Basics - Anfänger-Themen 6
F JSON to JAVA (und vice versa) Java Basics - Anfänger-Themen 2
M JSON Datensätze aus Website in Tabelle Java Basics - Anfänger-Themen 17
C Java, Javascript, Dojox und JSON Java Basics - Anfänger-Themen 4
S JSON String in Object umwandeln Java Basics - Anfänger-Themen 3
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
D Regex greift nicht richtig Java Basics - Anfänger-Themen 4
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
J .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
K Verstehe Rekursion nicht ganz Java Basics - Anfänger-Themen 7
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6
K TicTacToe belegtes feld nicht neu besetzbar Java Basics - Anfänger-Themen 1
K TicTacToe belegtes Feld nicht neu besetzbar Java Basics - Anfänger-Themen 3
A Warum wird mein jdk nicht gefunden? Java Basics - Anfänger-Themen 3
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
K Programm compilierbar aber nicht ausführbar... Java Basics - Anfänger-Themen 21
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
G Mit jPackage erstellte EXE funktioniert nicht Java Basics - Anfänger-Themen 2
N BMI Rechner Was haltet ihr von dem Code habt ihr Verbesserungsvorschläge weil design teschnisch ist das nicht das geilste würde das gerne überarbeiten Java Basics - Anfänger-Themen 12
G Robot funktioniert nicht bei SelectionListener Java Basics - Anfänger-Themen 6
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
J jar Befehl wird nicht erkannt Java Basics - Anfänger-Themen 7
missy72 Erste Schritte (nicht) Deterministischer endlicher Automat Java Basics - Anfänger-Themen 9
T Getter/Setter - wie sieht ein Setter aus? Und wie nicht? Java Basics - Anfänger-Themen 34
T catch(InputMismatchException) wird nicht ausgefürt/erkannt Java Basics - Anfänger-Themen 12
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
P Netbeans installation geht nicht Java Basics - Anfänger-Themen 26
R RegEx funktioniert nicht Java Basics - Anfänger-Themen 14
T HashMap Lsite gibt die sachen nicht aus wie gewollt. Java Basics - Anfänger-Themen 3
H Counter durch gepresste Taste nur auf 1 erhöhen und nicht durchzählen lassen Java Basics - Anfänger-Themen 7
S 2 Reihen ratio-btn, eine Reihe funktioniert andere nicht Java Basics - Anfänger-Themen 4
T scanner nicht erkannt Java Basics - Anfänger-Themen 3
monsterherz Punkt Notation funktioniert nicht Java Basics - Anfänger-Themen 4
monsterherz Fehler Semikolon fehlt - ich weiss aber nicht wo da noch eines hin sollte... Java Basics - Anfänger-Themen 21
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
monsterherz einfache Methode mit Fehler den ich nicht finde Java Basics - Anfänger-Themen 21
monsterherz if / else if mit Fehler den ich leider nicht finde Java Basics - Anfänger-Themen 11
D Jar Datei startet unter Linux nicht Java Basics - Anfänger-Themen 3
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben