Mon problème est de savoir comment appeler cela. Je pourrais faireComment tester POST spring mvc
MyObject o = new MyObject();
myController.save(o, "value");
mais ce n'est pas ce que je voudrais faire. Je voudrais que le MyObject soit dans le corps du message de la demande? Comment cela peut-il être fait?
@Requestmapping(value="/save/{value}", method=RequestMethod.POST)
public void post(@Valid MyObject o, @PathVariable String value{
objectService.save(o);
}
Pour être clair, je parle de tests unitaires.
Edit:
@RequestMapping(value = "/", method = RequestMethod.POST)
public View postUser(ModelMap data, @Valid Profile profile, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return dummyDataView;
}
data.put(DummyDataView.DATA_TO_SEND, "users/user-1.json");
profileService.save(profile);
return dummyDataView;
}
Merci beaucoup. Faut-il json? Dois-je utiliser le requestbody? – pethel
Il peut être converti en n'importe quel type que votre contrôleur accepte. Former les données, obtenir les octets et le définir à la demande. – FFL
Donc, je pourrais faire request.setContent (o); ? – pethel