2011-01-21 6 views
2

Я пост ниже JSON содержатпружина контроллер JSON получить JSON Список

{"testListObject":[{"testText":"bbb","testDate":"02.01.2011 00:00:00.000"},{"testText":"aaa","testDate":"01.01.2011 00:00:00.000"}]} 

в моем весеннем контроллер у меня есть

@RequestMapping(value = "/post/tester/", method = RequestMethod.POST) 
public @ResponseBody String postItinerary(@ModelAttribute("testListObject") TestList testList) throws IOException { 


    System.out.println("1="+testList); //ok 
    System.out.println("2="+testList.childListObject); //print null 
} 

Любая идея, почему я получаю нуль для списка childListObject?

мой POJO выглядеть ниже

public class TestList(){ 

    public List<ChildObject> childListObject; 

//get and set 
    } 


    public class ChildObject(){ 

    public String testText; 
    public String testDate; 
//get and set  
} 

ответ

5

@ModelAttribute вызывает связывание данных в Интернете. Он ищет обычные параметры метода сообщения (например, param key - "childListObject [0] .testText" значение параметра "bbb") для привязки к вашему объекту.
Для десериализации JSON в объект вы хотите использовать @RequestBody для вызова сериализатора.

Кроме того, ваш JSON, похоже, не соответствует объекту. Вы JSON - это просто массив без объекта-обертки, поэтому, если вы отправили его в качестве своего запроса, параметр метода будет просто списком.

0

Вы настроены org.springframework.http.converter.json.MappingJacksonHttpMessageConverter в настройках XML?

 Смежные вопросы

  • Нет связанных вопросов^_^