我尝试通过在我的Back(Spring MVC)和我的Front(Angular)之间传递一个bean来测试我的web应用程序
这是Bean:
import java.util.List;
// liste des conférences choisies par un candidat
public class PartListFormDTO {
private ParticipantDTO participant;
private List<FormationDTO> listForm;
public ParticipantDTO getParticipant() {
return participant;
}
public void setParticipant(ParticipantDTO participant) {
this.participant = participant;
}
public List<FormationDTO> getListForm() {
return listForm;
}
public void setListForm(List<FormationDTO> listForm) {
this.listForm = listForm;
}
}
这是控制器:
// formation List
@RequestMapping(value = "/init", method = RequestMethod.GET)
@ResponseBody
public PartListFormDTO init() {
return service.init();
}
init()将bean正确地发送到前面。 Chrome控制台:
Object {participant: Object, listForm: Array[2]}
listForm: Array[2]
0: Object
1: Object
participant: Object
在我的阵线中,我立即发回它进行测试。
这是控制器:
// formation book
@RequestMapping(value="/book", method=RequestMethod.POST)
@ResponseBody
public StatusResponse book(PartListFormDTO partListFormDTO) {
return null;
// return service.book(partListFormDTO);
}
Angular Service中的请求参数:
$http({
headers:{'Content-Type':'multipart/form-data'},
//headers:{'Content-Type':'application/json;odata=verbose'},
//headers:{'Accept': 'application/json, text/plain, */*',
// 'Content-Type':'application/json; multipart/form-data; charset=utf-8'},
method: 'POST',
url: url,
params: data
})
.success( function(data, status, headers, config) {
defData.$resolve(data);
$log.info(data);
})
现在,您必须知道我的控制器中有其他方法可以正常工作。如果我发送一个没有List属性的bean,它就可以了!! 但是像我一样的列表的bean,它不起作用
public class PartListFormDTO {
private ParticipantDTO participant;
private List<FormationDTO> listForm;
.....
我怎么能通过它?