Olá pessoal, meu código não funcionou, criei o arquivo na pasta correta, fiz a anotação conforme recomendado, mas acabou que imprime a string {nome.obrigatorio} e não o que tá no arquivo
Olá pessoal, meu código não funcionou, criei o arquivo na pasta correta, fiz a anotação conforme recomendado, mas acabou que imprime a string {nome.obrigatorio} e não o que tá no arquivo
Oi Danilo!
Eu testei aqui com o projeto final do curso e funcionou certinho a leitura da mensagem do arquivo properties.
Vi que o seu código e arquivo properties estão corretos, então acho que talvez o projeto não tenha sido reiniciado e não pegou as mudanças.
Verifica também sua classe de tratamento de erros se está assim:
@ExceptionHandler(MethodArgumentNotValidException.class)
public ResponseEntity tratarErro400(MethodArgumentNotValidException ex) {
var erros = ex.getFieldErrors();
return ResponseEntity.badRequest().body(erros.stream().map(DadosErroValidacao::new).toList());
}
private record DadosErroValidacao(String campo, String mensagem) {
public DadosErroValidacao(FieldError erro) {
this(erro.getField(), erro.getDefaultMessage());
}
}
Rodrigo, eu descobri olhando para a imagem depois de seu post. Tem um espaço antes do V de validation