谁能帮助我解决这个发送带ATTACHMENT的HTML格式MAIL的问题??

SophiaQ 2001-07-10 01:57:27
HI,各位高手,谁能帮我这个忙?我遇到点问题。

我想发送HTML格式的邮件,
而当邮件不带ATTACHMENT的时候,发送成功;
当带附件时,发送的却总是PLAIN TEXT的格式,WHY?
下面是我的CODE:

/*Begin*/
protected void doSendMessage(Dictionary fields)
throws IOException, MessagingException, javax.servlet.ServletException
{

String smtpServer = (String) fields.get("smtpServer");
String mailer = "Ibm Bpportal SendMail";

Properties props = System.getProperties();
props.put("mail.smtp.host", smtpServer);

Session session = Session.getDefaultInstance(props, null);

Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress((String)fields.get("from")));

InternetAddress[] tos = InternetAddress.parse((String)fields.get("to"));
msg.setRecipients(Message.RecipientType.TO, tos);

if(fields.get("cc") != null)
{
InternetAddress[] ccs = InternetAddress.parse((String)fields.get("cc"));
msg.setRecipients(Message.RecipientType.CC,ccs);
}
msg.setSubject((String)fields.get("subject"));

msg.setSentDate(new Date());
msg.setHeader("Content-Type", "text/html; charset=gb2312");


if(null == fields.get("attachment"))
{
msg.setText((String)fields.get("body"));
msg.setContent((String)fields.get("body"),"text/html");
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
msg.setDataHandler(new DataHandler(new ByteArrayDataSource((String)fields.get("body"), 'text/html")));
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
}
else
{
BodyPart body = new MimeBodyPart(),
attachment = (BodyPart)fields.get("attachment");

body.setText((String)fields.get("body"));
body.setContent((String)fields.get("body"),"text/html");
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
body.setDataHandler(new DataHandler(new ByteArrayDataSource((String)fields.get("body"),"text/html")));
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MimeMultipart multipart = new MimeMultipart();
multipart.addBodyPart(body);
multipart.addBodyPart(attachment);
msg.setContent(multipart);
}

Transport.send(msg);

}
/*End*/
...全文
63 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧