Я использую библиотеку GSON и Volley для работы в сети в своем приложении для Android, но при преобразовании ответа Json в классы модели с помощью Gson я получаю следующую ошибку:
88-2006/ E/Volley﹕ [121] NetworkDispatcher.run: необработанное исключение java.lang.RuntimeException: невозможно вызвать конструктор без аргументов для класса [Lcom.пример.модель.Продукт;. Регистрация InstanceCreator в Gson для этого типа может решить эту проблему.
java.lang.RuntimeException: невозможно вызвать конструктор без аргументов для класса [Lcom.example.model.Product;. Регистрация InstanceCreator в Gson для этого типа может решить эту проблему.
Это мои POJO-классы, которые я использую:
Product.java
public class Product {
private String status;
private List results = new ArrayList();
private Pagination pagination;
public Product(){}
// getters and setters
}
Разбиение на страницы.java
public class Pagination {
private String first;
private String previous;
private String next;
private String last;
public Pagination(){}
}
Result.java
public class Result {
private String id;
private Properties properties;
public Result{}
Properties.java
public class Properties {
private String qbcode;
private String name;
private String purchasedate;
private String vendor;
private String thumbnail;
public Properties(){}
}
Я рассмотрел существующие вопросы, похожие на этот. Согласно ответам, которые я нашел, я добавил конструктор без аргументов ко всем классам, но все равно получаю сообщение об ошибке, пожалуйста, помогите мне решить эту проблему.
Строка Json:
{
"status" : "OK",
"results" : [ {
"id" : "IzIzOjE=",
"properties" : {
"qbcode" : "IN-1-1",
"name" : "Test Name",
"purchasedate" : "2015-05-21",
"vendor" : "Test Vendor",
"thumbnail" : "http://en.wikipedia.org/static/images/p ... enwiki.png"
}
}, {
"id" : "IzIzOjI=",
"properties" : {
"qbcode" : "IN-1-2",
"name" : "Test Name",
"purchasedate" : "2015-05-21",
"vendor" : "Test Vendor",
"thumbnail" : "http://en.wikipedia.org/static/images/p ... enwiki.png"
}
}, {
"id" : "IzIzOjM=",
"properties" : {
"qbcode" : "IN-1-3",
"name" : "Test Name",
"purchasedate" : "2015-05-21",
"vendor" : "Test Vendor",
"thumbnail" : "http://en.wikipedia.org/static/images/p ... enwiki.png"
}
},{
"id" : "IzIzOjU=",
"properties" : {
"qbcode" : "IN-1-5",
"name" : "Test Name",
"purchasedate" : "2015-05-21",
"vendor" : "Test Vendor",
"thumbnail" : "http://en.wikipedia.org/static/images/p ... enwiki.png"
}
} ],
"pagination" : {
"first" : "/list?size=20",
"previous" : "/list?start=IzIzOjE=&size=20",
"next" : "/list?start=IzIzOjQx&size=20",
"last" : "/list?start=IzIzOjYx&size=20"
}
}