2016-05-02 3 views
0

public abstract void write(JsonWriter out, T value) ;Was ist der zweite Parameter der write-Methode der TypeAdapter-Klasse?

ist diese Methode nicht leer oder NULL.

wenn dieser zweite Parameter null ist, dann heben sie jede Ausnahme wie

java.lang.UnsupportedOperationException: Attempted to serialize java.lang.Class: {}. Forgot to register a type adapter?

+0

beziehen Sie sich auf diese: https://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/com/google/gson/TypeAdapter.html .. Ich denke, dass Sie Ihren TypeAdapter nicht registrieren. –

+0

java.lang.UnsupportedOperationException wird ausgelöst, um anzuzeigen, dass die angeforderte Operation nicht unterstützt wird. Sie müssen Werte für die Registrierung Ihres Typregisters angeben –

Antwort

0

Ich würde vermuten, dass es sich um zwei nicht verwandte Fragen/Probleme. Der zweite Parameter in der Methode ist das Objekt, das tatsächlich serialisiert werden soll. Wenn Sie Ihre eigene Implementierung von TypeAdapter erstellen möchten, müssen Sie die T zu Ihrer konkreten Klasse verifizieren. Ein gutes Beispiel finden Sie in der doc.

Der angezeigte Fehler weist darauf hin, dass Sie TypeAdapter nicht mit der von Ihnen verwendeten Gson-Instanz registriert haben.

+0

registerTypeAdapter() ist die einzige Möglichkeit, die typeAdapter-Klasse zu registrieren –

Verwandte Themen