Caros Boa tarde.
Estou trabalhando e apanhando de um sistema legado. Não conheço muito de REST e o sistema é baseado nisso.
Estou com o seguinte problema.Preciso pergar esse json que o cliente manda e persisti-lo.
{“idcam”:“40”,“zones”:[{“zoneId”:“0”,“type”:“occupancy”,“label”:“Full Frame”,“zone_label”:“entrance”},{“zoneId”:“711568741124538445”,“type”:“occupancy”,“label”:“SAIDA”,“zone_label”:“exit”},{“zoneId”:“711568741124538446”,“type”:“occupancy”,“label”:“ENTRADA”,“zone_label”:“out”}]}
como faco para pega-lo com esse método.
@RequestMapping(value = “/savezone”, method = RequestMethod.POST, produces = ControllerUtils.APPLICATION_JSON)
@ResponseBody
public Object saveOrUpdateZones(HttpServletRequest request, @Valid @RequestBody CameraZoneTO cameraZoneForm, BindingResult bindingResult) {
BaseTO result = new BaseTO();
if (bindingResult.hasErrors()) {
Map<String, String> errors = ControllerUtils.getInvalidFields(bindingResult, Arrays.asList("idCamera","idLocation"));
if (!errors.isEmpty()) {
result.setMessage(message.getInvalidFieldsMessage(errors));
return result.toString(); }
}
try {
result.setAction(TransferAction.INSERT);
cameraZonesBusiness.saveOrUpdate(cameraZoneForm);
result.setResult(cameraZoneForm);
result.setMessage(message.getSuccessMessage("general.action.message.success.title", "camerazone.registered.success"));}
catch (IllegalArgumentException e) {
e.printStackTrace();
result.setMessage(message.getFailureMessage("general.action.message.error.title", e.getMessage()));}
catch (Throwable e) {
e.printStackTrace();
result.setMessage(message.getFailureMessage("general.action.message.error.title", "general.action.exception")); }
return result.toString();
}
Quando o front manda a requisição, da esse erro no Browser…
o browser informa que o formato não é correto
Message415 Request method ‘POST’ not supported
Agradeço que puder me ajudar.