我正在使用以下代码:
ic = new InitialContext();
Session session = (Session)ic.lookup(smtpJndi); //smtpJndi I have maintained a mail session in weblogic
dbg( "send-->lookup done");
Transport transport;
transport = session.getTransport();
Message msg = new MimeMessage(session);
msg.setFrom();
msg.addRecipient(Message.RecipientType.TO, new InternetAddress(mailId));
msg.setHeader("X-Priority", "1");
msg.setSubject("Aproval Request");
String htmlContent="test"
msg.setContent(htmlContent,"text/html");
dbg("send-->set transport.connect()");
transport.connect(smtpHost, smtpUser, smtpPwd);
dbg( "send-->sendMessage()");
transport.sendMessage(msg, msg.getRecipients(Message.RecipientType.TO));
我应该做出哪些改变,以便它可以带有适当的发件人。
答案 0 :(得分:0)
不带参数的setFrom方法使用来自您环境的信息。如果环境没有预期的信息,则可能导致问题。尝试使用带有显式地址的setFrom:
MimeMessage msg = new MimeMessage(session);
msg.setFrom("you@whatever.com");
通常,“发件人”地址应与您在SMTP服务器上使用的帐户相对应。