Problem mit GSON und InstanceCreator

8

Ich habe folgende POJOs:

%Vor%

Ich habe kein Problem damit, GSON dazu zu bringen, eine Instanz von ShapeHolder zu JSON zu serialisieren. Aber wenn ich versuche, einen String dieses JSON wieder in eine ShapeHolder Instanz zu deserialisieren, bekomme ich Fehler:

%Vor%

Wirft:

%Vor%

Also habe ich hier gesucht und mit der Implementierung begonnen mein eigenes ShapeInstanceCreator :

%Vor%

Aber jetzt stecke ich fest: Ich bekomme nur ein java.lang.reflect.Type , aber ich brauche wirklich ein java.lang.Object , damit ich Code schreiben kann wie:

%Vor%

Was kann ich tun? Vielen Dank im Voraus!

AKTUALISIEREN :

Per @ Raffians Vorschlag (den Link, den er / sie gepostet hat), ich habe ein InterfaceAdapter genau wie das im Link implementiert (ich habe nichts geändert) ). Jetzt bekomme ich die folgende Ausnahme:

%Vor%

Irgendwelche Ideen?

    
IAmYourFaja 07.12.2013, 23:16
quelle

2 Antworten

4

Haben Sie sich das angesehen? Sieht wie eine nette, saubere Möglichkeit zur Implementierung von InstanceCreators aus.

Ich habe auch Gson benutzt, bin aber wegen Serialisierungsproblemen zu FlexJSON gewechselt. Mit Flex brauchen Sie keine Instanz-Ersteller, stellen Sie nur sicher, dass Ihre Objekte Getter / Setter für alle Felder haben, basierend auf der JavaBean-Spezifikation, und Sie können loslegen:

%Vor%     
raffian 07.12.2013, 23:49
quelle
0

HINWEIS: FlexJSON fügt den Klassennamen als Teil von json wie unten in der Serialisierungszeit ein.

%Vor%

So wird JSON etwas bescheuert sein; aber Sie brauchen nicht schreiben InstanceCreator , die in GSON erforderlich ist.

    
Kanagavelu Sugumar 18.11.2016 07:34
quelle