Итак, у меня есть String, являющийся результатом метода toJson, который я реализовал в классе, и подтвердил в своем тестовом коде, что это правильное представление Json моего класса. Моя цель - превратить эту String в JsonObject и передать ее конструктору, используя Gson. Однако я столкнулся с нечетной проблемой.Gson fromJson возвращает пустой JsonObject
Это код, который я звоню:
Gson gson = new Gson();
JsonObject jObj = gson.fromJson(jsonString, JsonObject.class);
Я использовал буквально это точно такой же фрагмент кода, прежде чем во многих местах в моем проекте, для других классов, и она работала отлично. Я даже скопировал один из этих функциональных фрагментов кода в этот тестовый класс и попробовал его. Тем не менее, каждая версия, которую я пытаюсь получить, дает одно и то же: jObj - пустой набор скобок.
Я не понимаю, как это происходит. Я подтвердил, что у jsonString есть все поля, в которых это необходимо. Почему Gson возвращает пустой JsonObject? Никакие исключения не бросаются.
Что такое содержимое jsonString, когда вы получаете пустой JsonObject? –
строка "{" varName ": 1," otherVarName ": 2," thirdVarName ": 3.4}" и так далее. Типичный объект Json –
Он работает для меня, я получил ожидаемый результат. Пожалуйста, покажите небольшую программу, демонстрирующую проблему. –