3
SSL 연결을 사용하여 Gmail SMTP 서버를 통해 이메일 알림을 보내려고합니다. 그러나 아무 이메일도 얻지 않고있다. 심지어 오류가 거기에보고됩니다. 내 방법 send()
아래주고있다. 제발 도와주세요. 나는 JSF2를 사용하고 있습니다.SSL 연결을 사용하여 Gmail SMTP 서버를 통해 이메일 알림 보내기
public void send()
{
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() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("userName","password");
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("[email protected]"));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse("[email protected]"));
message.setSubject("Testing Subject");
message.setText("Dear Mail Crawler," +
"\n\n No spam to my email, please!");
Transport.send(message);
System.out.println("Done");
} catch (MessagingException e) {
throw new RuntimeException(e);
}
}
JSF2와 정확히 어떻게 관련이 있습니까? 'main()'메쏘드를 가진 평범한 자바 애플리케이션에서 실행될 때 제대로 작동한다는 것을 암시하고 있습니까? 그것도 실패하더라도 JSF2와 완전히 관련이 없으며 JSF2 태그를 제거해야합니다. – BalusC
Ok.But 이것은'main()'에 없습니다. 나는 이걸'send()'라고 어딘가에 부르고 있었다. – NaaN
당신이 날 이해하지 못했을 것 같아요. 이 코드를'main()'메쏘드 안에 복사하고 그것을 보통의 자바 애플리케이션처럼 실행하십시오. 똑같은 문제가 발생하면 JSF2와 전혀 관련이 없습니다. 결국, 일반적인 Java 응용 프로그램으로 실행하면 훨씬 빠르고 쉽게 개발/테스트 할 수 있습니다. 일단 작동 시키면 JSF2 액션 메소드에서 독립형 Java 클래스를 가져 오거나 호출하는 것만으로하면된다. – BalusC