Вот мой код контроллера:
@RequestMapping(value = "/accountholders/{cardHolderId}/cards/{cardId}", produces = "application/json; charset=utf-8", consumes = "application/json", method = RequestMethod.PUT)
@ResponseBody
public CardVO putCard(@PathVariable("cardHolderId") final String cardHolderId,
@PathVariable("cardId") final String cardId, @Valid @RequestBody final RequestVO requestVO,
@RequestParam final Map<String, String> allRequestParams) {
iCardService.updateCardInfo(cardId, requestVO.getActive());
return iCardService.getCardHolderCardInfo(cardHolderId, cardId);
}
Это мой запрос Bean: -
public class RequestVO {
@NotNull
private Boolean active;
public Boolean getActive() {
return active;
}
public void setActive(Boolean active) {
this.active = active;
}
Тело моего запроса: -
{
"active":true,
"abc":"ignoring this"
}
Проблема, с которой я сталкиваюсь, заключается в том, что я отправил дополнительный параметр в тело запроса. Кажется, что в этом случае игнорируется дополнительное значение «abc». Код работает и дает мне ответ. Мне нужно выдать 400 BAD REQUEST.
Я что-то упустил или это способ сказать, чтобы он выдавал исключение при передаче дополнительного параметра.