Prezados, estou realmente travado nessa parte do curso. As anotações @NotBlank e @Valid, utilizadas para validar os dados inseridos nos atributos da classe RequisicaoNovoPedido e Validar no Controller respectivamente, não funcionam. Utilizei as anotações exatamente como ensinado pelo instrutor, porém parece que nada acontece. Segue a minha classe RequisicaoNovoPedido (utilizada para receber os dados do form, antes de ser instanciada a classe Pedido propriamente)
-------------------Código--------------------------------- import javax.validation.constraints.NotBlank;
public class RequisicaoNovoPedido { @NotBlank private String nomePedido; @NotBlank private String urlProduto; @NotBlank private String urlImagem; @NotBlank private String descricao; public String getNomePedido() { return nomePedido; }
public Pedido toPedido() { Pedido pedido = new Pedido();
pedido.setDescricao(descricao);
pedido.setNomeProduto(nomePedido);
pedido.setUrlImagemExterna(urlImagem);
pedido.setUrlProduto(urlProduto);
return pedido;
}
} ---------------------------------Fim código------------------------- Agora, segue abaixo o trecho do código do controller>
import javax.validation.Valid;
@PostMapping("novo")
public String novo(@Valid RequisicaoNovoPedido requisicaoNovoPedido, BindingResult result) {
if(result.hasErrors()) {
return ("pedido/formulario");
}else {
try {
Pedido pedido = requisicaoNovoPedido.toPedido();
pedidoRepository.save(pedido);
} catch (Exception e) {
e.printStackTrace();
}
return "home";
}
}
---------------------------Fim código--------------------
Pesquisei em alguns fóruns, e percebi a necessidade de incluir uma dependência, conforme abaixo: org.springframework.boot spring-boot-starter-validation
Porém, esta API não possui a Anotação @Valid e sim a @Validated. Indo além, a anotação @NotBlank dessa API está como deprecated e, mesmo a utilizando, o método hasErrors (da Interface BindingResults) simplesmente retorna false.
Alguém saberia resolver essa situação???
Veja, parece que algo recorrente> https://stackoverflow.com/questions/50017134/javax-validation-notblank-missing-validator