2017-10-11 5 views
0

J'ai un objet 'JudoClass' qui contient une liste arrayList d'objets 'Student'. Quand j'essaye de créer un étudiant, j'obtiens l'erreur ci-dessus.Erreur: com.fasterxml.jackson.databind.JsonMappingException: impossible de désérialiser l'instance d'entités.Etudiant sur le marqueur START_ARRAY

méthode Post:

@POST 
@Produces(MediaType.APPLICATION_JSON) 
@Consumes(MediaType.APPLICATION_JSON) 
@Path("/createStudent") 
public Response createAccount(Student aStudent) { 
    students.put(aStudent.getId(), aStudent); 
    allStudents.add(aStudent); 
    System.out.print("user created with id: " + aStudent.getId()); 
    return Response.ok(students, MediaType.APPLICATION_JSON).build(); 
} 

étudiants est une carte de hachage de tous les élèves. (Touslesétudiants est un arrayList, je teste à la fois)

JSON dans postier:

[ 
{ 
    "id": 3, 
    "username": "Mark", 
    "password": "password" 
} 
] 

Je reçois aussi cette erreur lorsque je tente de créer ou modifier un JudoClass.

Répondre

0

Votre méthode prend un étudiant en tant que paramètre

public Response createAccount(Student aStudent) { 

Mais vous envoyez un tableau.

Ainsi, votre méthode devrait ressembler à

public Response createAccount(List<Student> aStudent) {