Не удалось преобразовать строку json в класс Product клиентской библиотеки Google 1.19.1
Я получаю строку JSON в качестве входных данных, которые мне нужно преобразовать в объект класса Product. Класс Product принадлежит клиентской библиотеке Google 1.19.1.
При преобразовании строки JSON в объект Product с использованием сопоставителя объектов выдается следующая ошибка.
Ошибка:
Исключение в потоке "main" java.lang.IllegalArgumentException: невозможно установить поле com.google.api.services.content.model.Price com.google.api.services.content.model.Product.price для java.util.LinkedHashMap
Может ли кто-нибудь предложить, пожалуйста, как преобразовать входную строку JSON
Код для того же написан ниже:
import org.codehaus.jackson.map.ObjectMapper;
String temp = "{\" channel \ ": \" online \ ", \" contentLanguage \ ": \" en \ ", \" offerId \ ": \" полотенце \",\"targetCountry\":\"IN\",\" условие \ ": \" восстановлено \ ", \" ссылка \ ": \" https://www.sokrati.com/\",\"price\":{\"value\":\"12\",\"currency\":\"INR\"},\"title\":\" Приключения Тинтина \ ", \" доступность \ ": \" preorder \ "}";
Product product = mapper.readValue (temp, Product.class);
1 ответ
Мне удалось сделать это с помощью класса com.google.api.client.json.jackson2.JacksonFactory:
com.google.api.client.json.jackson2.JacksonFactory().fromString(temp, com.google.api.services.content.model.Product.class)