我正在尝试使用JSP中的java邮件发送反馈电子邮件。我的代码是
<%@ page import = "java.io.*,java.util.*,javax.mail.*"%>
<%@ page import = "javax.mail.internet.*,javax.activation.*"%>
<%@ page import = "javax.servlet.http.*,javax.servlet.*" %>
<%
String result;
String to = "receiver@mail.com";
String from = "sender@mail.com";
String host = "smtp.gmail.com";
Properties properties = System.getProperties();
properties.setProperty("mail.smtp.host", host);
Session mailSession = Session.getDefaultInstance(properties);
try {
MimeMessage message = new MimeMessage(mailSession);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));
message.setSubject("subject");
message.setText("message to send");
Transport.send(message);
result = "Sent message successfully....";
}
catch (MessagingException mex) {
mex.printStackTrace();
result = "Error: unable to send message....";
}
%>
<html>
<head>
<title>Send Email using JSP</title>
</head>
<body>
<center>
<h1>Send Email using JSP</h1>
</center>
<p align = "center">
<%
out.println("Result: " + result + "\n");
%>
</p>
</body>
</html>
但它始终显示错误:无法发送消息.... 这个代码有什么问题....? 我试图打印错误消息,它显示身份验证错误,无法发送这样的。 由于这是一封反馈电子邮件,我不希望用户提供他/她的密码来发送电子邮件,请提供更好的解决方案(我已将mail.jar和activation.jar包含在库文件夹中)。
答案 0 :(得分:0)
您需要使用自己的凭据登录邮件服务器。