Я пишу простой Java программа для отправки почты на конкретный электронный идентификатор с помощью java mail using SSL
не удалось отправить Java почту через SSL в Servlet
Ниже мой код
public static String sendMail(String to)
{
String status_message = null;
try
{
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class",
"javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "465");
Session session = Session.getDefaultInstance(props,
new javax.mail.Authenticator()
{
@Override
protected PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("[email protected]","password");//change accordingly
}
});
//compose message
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("[email protected]"));//change accordingly
message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));
message.setSubject("Email Subject");
message.setText("Text Content included in inside Email");
//send message
Transport.send(message);
status_message = "success";
}
catch (MessagingException ex)
{
status_message = ex.getMessage();
}
}
Когда я побежал этот код внутри a pariticular main Thread. Он работал успешно.
Но это же не работал, когда я включил его inside a function called within a servlet
Когда я прочитал значение STATUS_MESSAGE. Он показывает smtp
.
Может ли кто-нибудь помочь мне узнать, в чем проблема. Я что-то пропустил? Я хочу отправить почту через сервлет jsp.
Публикация бесполезных утверждений типа «не работает» в основном является пустой тратой времени. Опубликовать исключение, трассировку стека и т. Д. – EJP
@EJP status_message содержит сообщение об ошибке и отображает smtp ... –