Подтвердить что ты не робот

Установка имени из имени в javax.mail.MimeMessage?

В настоящее время наше приложение использует javax.mail для отправки электронной почты, используя javax.mail.MailMessage. Мы установили заголовки From из этого сообщения таким образом:

Message msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress("[email protected]"));

Это работает отлично, но мы хотели бы сделать раздел "От" более удобным для пользователя. В настоящее время кто-то, получивший электронное письмо, увидит "[email protected]" в разделе "От" своего почтового ящика. Вместо этого мы хотели бы, чтобы они увидели там "Компанию XYZ". Я полагаю, что это, вероятно, сделано с помощью метода addHeader(), но я не уверен, каким будет имя заголовка.

4b9b3361

Ответ 2

Если вы хотите сохранить электронное письмо + имя в одной строке (проще, чем сохранить две строки):

Message msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress("Company XYZ <[email protected]>"));

Ответ 3

В случае, когда я использовал локализованный текст со специальными символами типа \u00FA, у меня были проблемы с псевдонимом псевдонимов электронной почты для некоторых pop3-клиентов, если бы я использовал только

MimeMessage m = new MimeMessage(session);
m.setFrom();

Его можно решить с помощью отдельного адреса электронной почты и псевдонима, вызвав:

MimeMessage m = new MimeMessage(session);
            m.setFrom(new InternetAddress(session.getProperty("mail.from"), session.getProperty("mail.from.alias"),"UTF8"));

ref: https://javamail.java.net/nonav/docs/api/javax/mail/internet/InternetAddress.html#InternetAddress(java.lang.String,%20java.lang.String,%20java.lang.String)