1
resposta

Como passar valor para enum no json?

Eu estou fazendo alguns testes com o que aprendi no curso e adicionei as anotações @NotEmpty e @NotNull em um enum que eu chamei de "Categoria", dentro deles um dos valores é "CHROMEBOOK". Coloquei a anotação @Valid nos parametros do método Post e na hora de realizar os testes no Postman estou tomando um erro que não estou sabendo resolver, segue o print A imagem mostra as classes do projeto recebendo os valores para a instancia, e o erro  No validator could be found for constraint 'javax.validation.constraints.NotEmpty' validating type 'br.com.degraus.formulariospring.modelo.Categoria'. Check configuration for 'categoria' "

Não deveria ser só passar o nome da classe entre parenteses seguido do valor que eu quero atribuir, da forma que está na imagem?

1 resposta

Oi Rafael,

No caso de atributos do tipo enum você não pode utilizar a anotação @NotEmpty, mas apenas o @NotNull, caso o campo seja obrigatório.

E o json enviado deve ter o nome da constante do enum, que o próprio Spring vai validar se o valor enviado é uma das constantes do enum, devolvendo erro 400 se não for.

Bons estudos!