Это мой класс POJO.UnrecognizedPropertyException: непризнанная ошибка поля в android
public class Product implements ParentListItem {
private String ProductName;
private int ProductID;
private String ProductImagePath;
private String BrandName;
private int BrandID;
private String SubCategoryName;
private int SubCategoryID;
private List<ProductVariant> Variants = new ArrayList<>();
Product(){}
}
Json Формат:
[{
"Variants": [{
"VariantID": "1",
"VariantName": "50 GM",
"VariantImagePath": null,
"MRP": "19.00",
"SellPrice": "18.24",
"InCart": "0"
}],
"ProductName": "Body Cleanser - Lemon Honey Kanti",
"ProductID": "1",
"BrandName": "Patanjali",
"SubCategoryID": "44",
"SubCategoryName": "Bathing Soap",
"ProductImagePath": "\/images\/patanjali\/1819.png",
"BrandID": "112"
}]
Я пытаюсь использовать этот POJO, как это.
for (DataSnapshot postSnapshot : snapshot.getChildren()) {
Product product = postSnapshot.getValue(Product.class);
products.add(product);
}
Но я получаю эту ошибку:
Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "BrandID" (class com.example.sony.models.Product), not marked as ignorable (9 known properties: , "brandID", "subCategoryName", "productID", "childItemList", "variants", "productImagePath", "brandName", "subCategoryID", "productName"])
Непризнанного поля "BrandID", но это поле доступно в POJO.
Я не понимаю, почему поле моего основного дела преобразуется в Smallcase?
Почему эта ошибка? как это исправить?
[http://stackoverflow.com/questions/4486787/jackson-with-json -назначенный-не-отмеченный-как-игнорировать] (http://stackoverflow.com/questions/4486787/jackson-with-json-unrecognized-field-not-marked-as-ignorable) –
@MD, Спасибо за ответ. Но в моем случае присутствуют все поля. Поэтому я не думаю, что мне нужно отметить их невежественными –
Ваш JSON имеет BrandID как String, тогда как POJO имеет его как int. Можете ли вы попробовать изменить его на String? – basilisk