Alguém conseguiu implementar esse mão na massa?
Para mim gerar falha no sistema.
O último código, me parece estar errado. E não tem a indicação do local certo de chamar o método.
Chamei no public Long salvarUsuario()
da classe UsuarioService
.
Alguém conseguiu implementar esse mão na massa?
Para mim gerar falha no sistema.
O último código, me parece estar errado. E não tem a indicação do local certo de chamar o método.
Chamei no public Long salvarUsuario()
da classe UsuarioService
.
Olá José! Tudo bem?
Pelo que você descreveu, parece que o problema pode estar na forma como o método está sendo chamado dentro do UsuarioService
. Aqui estão algumas dicas que podem te ajudar:
Verifique o Método de Envio de E-mail: Certifique-se de que o método responsável por enviar o e-mail está corretamente implementado. Ele deve ser capaz de enviar e-mails sem erros. Isso geralmente envolve configurar corretamente o serviço de e-mail (SMTP) e garantir que as credenciais estejam corretas.
Local Correto para Chamar o Método: O método de envio de e-mail deve ser chamado após a geração da senha aleatória e após o usuário ser salvo no banco de dados. Isso garante que o e-mail seja enviado apenas quando o usuário já está cadastrado.
Exemplo Prático: Suponha que você tenha um método enviarEmailComSenha(String email, String senha)
dentro do seu serviço de e-mail. Você pode chamá-lo logo após salvar o usuário, como no exemplo abaixo:
public Long salvarUsuario(Usuario usuario) {
// Lógica para salvar o usuário
Long userId = usuarioRepository.save(usuario).getId();
// Gerar senha aleatória
String senhaAleatoria = gerarSenhaAleatoria();
// Enviar e-mail com a senha
emailService.enviarEmailComSenha(usuario.getEmail(), senhaAleatoria);
return userId;
}
Espero que essas dicas ajudem a resolver o problema.