J'obtiens l'erreur suivante lorsque j'essaie d'obtenir une demande JSON et de la traiter:
org.codehaus.jackson.map.JsonMappingException: aucun constructeur approprié trouvé pour le type [type simple, classe com.myweb.ApplesDO]: ne peut pas instancier à partir de l'objet JSON (besoin d'ajouter / activer les informations de type?)
Voici le JSON que j'essaie d'envoyer:
{
  "applesDO" : [
    {
      "apple" : "Green Apple"
    },
    {
      "apple" : "Red Apple"
    }
  ]
}
Dans Controller, j'ai la signature de méthode suivante:
@RequestMapping("showApples.do")
public String getApples(@RequestBody final AllApplesDO applesRequest){
    // Method Code
}
AllApplesDO est un wrapper d'ApplesDO:
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
    }
}
Je pense que Jackson est incapable de convertir JSON en objets Java pour les sous-classes. Veuillez aider avec les paramètres de configuration pour Jackson pour convertir JSON en objets Java. J'utilise Spring Framework.
EDIT: inclus le bogue majeur à l'origine de ce problème dans l'exemple de classe ci-dessus.