Olá, Matheus! Tudo joia?
Você levantou uma questão muito importante sobre a padronização das respostas das exceções.
Sim, pode gerar problemas no futuro se as respostas de suas exceções não forem padronizadas. Por exemplo, se um cliente da sua API estiver esperando um JSON e receber uma string, isso pode causar erros inesperados no lado do cliente.
Para padronizar suas respostas, você pode criar uma classe que represente a estrutura do JSON que você deseja retornar. Por exemplo:
public class ErroResposta {
private String campo;
private String mensagem;
// Getters e setters
}
Então, no seu tratador de exceções, você pode retornar uma instância dessa classe em vez de uma string. Por exemplo:
@ExceptionHandler(ValidacaoException.class)
public ResponseEntity<ErroResposta> tratarErroValidacao(ValidacaoException ex) {
ErroResposta erro = new ErroResposta();
erro.setCampo("email");
erro.setMensagem(ex.getMessage());
return ResponseEntity.badRequest().body(erro);
}
Dessa forma, todas as suas exceções retornarão um JSON com a mesma estrutura, facilitando o tratamento dessas exceções do lado do cliente.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.