【发布时间】:2016-06-24 19:05:06
【问题描述】:
我正在尝试使用 javamail 从一个帐户向另一个帐户发送一封电子邮件。但是代码无法执行 Transport.send(msg);线。可能的原因是什么? 下面是下面的jsp代码。
<%
String host = "localhost";
String to = request.getParameter("to");
String from = request.getParameter("from");
String subject = request.getParameter("subject");
String messageText = request.getParameter("body");
boolean sessionDebug = false;
Properties props = System.getProperties();
props.put("mail.host", host);
props.put("mail.transport.protocol", "smtp");
Session mailSession = Session.getDefaultInstance(props, null);
mailSession.setDebug(sessionDebug);
try {
Message msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = {new InternetAddress(to)};
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject(subject);
msg.setSentDate(new Date());
msg.setText(messageText);
Transport.send(msg);
out.println("Mail was sent to " + to);
out.println(" from " + from);
out.println(" using host " + host + ".");
} catch (MessagingException mex) {mex.printStackTrace();}
%>
【问题讨论】:
-
jsp页面不要写java代码
-
你的 smtp 端口在哪里??无论如何把你的 StackTrace 放在这里。
-
使用
gmail服务器测试您的代码,链接here。如果它正在工作,请使用您拥有的任何内容更改服务器和端口名称。
标签: java jsp email jakarta-mail