Alterar nome do remetente - Office365 - Java

22/03/2021

0

Boa noite, estou tentando realizar o envio de e-mail utilizando o servidor smtp.office365.com, em que o nome do remetente (personal name) seja alterado de acordo com as regras definidas, para alguns domínios o nome do remetente chega conforme foi configurado, para outros o nome do remetente chega com o nome do usuário da conta do e-mail. Por exemplo:
Enviei um e-mail para a conta teste@gmail.com, estou autenticado no office365 com o usuário teste@dominioparticular.com.br onde o nome do remetente configurado na conta é Teste, mas de acordo com a regra deve ser "João Antônio", chegou na conta teste@gmail.com com o nome "João Antônio" mas o mesmo e-mail enviado para um domínio que faz parte do domínio autenticado chega com o nome Teste. Pensei que poderia ter alguma regra no servidor do dominio do remetente que não deixa alterar o nome do remetente, mas hoje existe uma aplicação que faz isso e chega corretamente.


Segue exemplo do código utilizado:

public static void main(String[] args) {
        try {
            Properties properties = new Properties();
            properties.put("mail.smtp.host", "smtp.office365.com");
            properties.put("mail.smtp.port", "587");
            properties.put("mail.smtp.auth", "true");
            properties.put("mail.smtp.starttls.enable", "true");
            properties.put("mail.debug", "false");
            properties.put("mail.smtp.socketFactory.fallback", "false");
            Session mailSession = Session.getInstance(properties, new Authenticator() {
                @Override
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("teste@dominioparticular.com.br", "senha");
                }
            });
            MimeMessage message = new MimeMessage(mailSession);
            message.setFrom(new InternetAddress("teste@dominioparticular.com.br", "João Antônio"));
            message.addRecipients(Message.RecipientType.TO, "teste@gmail.com");
            message.setSubject("Assunto teste", "UTF-8");
            Multipart corpoEmail = new MimeMultipart();
            MimeBodyPart textoEmail = new MimeBodyPart();
            textoEmail.setContent("Teste teste", "text/html; charset=UTF-8");
            corpoEmail.addBodyPart(textoEmail);
            message.setContent(corpoEmail);
            Transport.send(message);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
Claudimiro Sobrinho

Claudimiro Sobrinho

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar