Olá, eu estava construindo uma opção própria e construi o POST certinho (tirando a utlização do Form) e o @Valid está funcionando, mas o erro está sendo impresso no console.
- Meu Model:
@NotNull
@NotEmpty
@Column(name = "nome")
private String nome;
- Meu POST do Controller:
private static final String URL_PLURAL = "/templates";
@PostMapping(value = URL_PLURAL, produces = MediaType.APPLICATION_JSON_VALUE)
@ApiModelProperty("Cria um novo template")
public ResponseEntity<TemplateDTO> cadastraTemplate(@RequestBody @Valid TemplateDTO templateDTO, UriComponentsBuilder uriComponentsBuilder) {
Template template = Template.desconvertId(templateDTO);
templateRepository.save(template);
URI uri = uriComponentsBuilder.path("template/{id}").buildAndExpand(template.getId()).toUri();
return ResponseEntity.created(uri).body(new TemplateDTO(template));
}
- Ele está validando corretamente, mas a mensagem está indo para o meu console da IDE:
List of constraint violations:[
ConstraintViolationImpl{interpolatedMessage='não deve estar vazio', propertyPath=nome, rootBeanClass=class com.ages.joinfut.Model.Template, messageTemplate='{javax.validation.constraints.NotEmpty.message}'}
]] with root cause
e no Postman me responde assim:
{
"timestamp": "2022-08-24T19:03:59.295+00:00",
"status": 500,
"error": "Internal Server Error",
"path": "/example/templates"
}