· 6 years ago · Nov 01, 2019, 09:20 PM
1public static void sendEmail(final String username, final String password, String recipientEmail, String ccEmail,
2 String title, String message) throws AddressException, MessagingException {
3 Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
4 final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
5 Properties props = System.getProperties();
6 props.setProperty("mail.smtps.host", "smtp.gmail.com");
7 props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
8 props.setProperty("mail.smtp.socketFactory.fallback", "false");
9 props.setProperty("mail.smtp.port", "465");
10 props.setProperty("mail.smtp.socketFactory.port", "465");
11 props.setProperty("mail.smtps.auth", "true");
12 props.put("mail.smtps.quitwait", "false");
13 Session session = Session.getInstance(props, null);
14
15 final MimeMessage msg = new MimeMessage(session);
16
17 msg.setFrom(new InternetAddress(username + "@gmail.com"));
18 msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recipientEmail, false));
19
20 if (ccEmail.length() > 0) {
21 msg.setRecipients(Message.RecipientType.CC, InternetAddress.parse(ccEmail, false));
22 }
23
24 msg.setSubject(title);
25 msg.setText(message, "utf-8");
26 msg.setSentDate(new Date());
27
28 SMTPTransport t = (SMTPTransport) session.getTransport("smtps");
29
30 t.connect("smtp.gmail.com", username, password);
31 t.sendMessage(msg, msg.getAllRecipients());
32 t.close();
33
34 }