2016-05-02 2 views
0

public abstract void write(JsonWriter out, T value) ;Каково использование второго параметра метода записи класса TypeAdapter?

Этот метод не должен быть пустым или NULL.

если второй параметр равен нулю, то это поднять любое исключение, как

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

+0

см. Https://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/com/google/gson/TypeAdapter.html .. Я думаю, что вы не регистрируете свой TypeAdapter. –

+0

java.lang.UnsupportedOperationException выбрано для указания, что запрошенная операция не поддерживается. вы должны предоставить значения для регистрации вашего регистра типа –

ответ

0

Я предположил бы, что эти 2 несвязанные вопросы/проблемы. Второй параметр в методе - это объект, который вы хотите фактически сериализовать. Если вы хотите создать свою собственную реализацию TypeAdapter, вам нужно будет подтвердить T на ваш конкретный класс. См. Пример doc.

Ошибка, которую вы видите, указывает, что вы просто не зарегистрировали свой TypeAdapter с использованием экземпляра Gson, который вы используете.

+0

registerTypeAdapter() - единственный способ зарегистрировать класс typeAdapter –

Смежные вопросы