Bir JSON isteği almak ve işlemek için çalışırken aşağıdaki hatayı alıyorum:
org.codehaus.jackson.map.JsonMappingException: [simple type, class com.myweb.ApplesDO] türü için uygun bir kurucu bulunamadı: JSON nesnesinden örnek oluşturulamıyor (tür bilgisi eklemeniz / etkinleştirmeniz mi gerekiyor?)
İşte göndermeye çalıştığım JSON:
{
"applesDO" : [
{
"apple" : "Green Apple"
},
{
"apple" : "Red Apple"
}
]
}
Denetleyici'de aşağıdaki yöntem imzasına sahibim:
@RequestMapping("showApples.do")
public String getApples(@RequestBody final AllApplesDO applesRequest){
// Method Code
}
AllApplesDO, ApplesDO'nun bir paketleyicisidir:
public class AllApplesDO {
private List<ApplesDO> applesDO;
public List<ApplesDO> getApplesDO() {
return applesDO;
}
public void setApplesDO(List<ApplesDO> applesDO) {
this.applesDO = applesDO;
}
}
ApplesDO:
public class ApplesDO {
private String apple;
public String getApple() {
return apple;
}
public void setApple(String appl) {
this.apple = apple;
}
public ApplesDO(CustomType custom){
//constructor Code
}
}
Jackson'ın JSON'u alt sınıflar için Java nesnelerine dönüştüremediğini düşünüyorum. Lütfen Jackson'ın JSON'u Java Nesnelerine dönüştürmesi için yapılandırma parametrelerine yardımcı olun. Spring Framework kullanıyorum.
EDIT: Yukarıdaki örnek sınıfta bu soruna neden olan büyük hata dahil - Lütfen çözüm için kabul edilen cevaba bakın.