Skip to Main Content

New to Java

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Email Using Gmail SMTP

Zulfi KhanAug 9 2017 — edited Aug 13 2017

Hi,

I want to send email using gmail SMTP. I got the following code from internet but I am getting following run-time error.

Kindly guide:

<

Exception in thread "main" java.lang.RuntimeException: javax.mail.NoSuchProviderException: smtp

        at SendMailTLS2.main(SendMailTLS2.java:46)

Caused by: javax.mail.NoSuchProviderException: smtp

        at javax.mail.Session.getService(Session.java:792)

        at javax.mail.Session.getTransport(Session.java:728)

        at javax.mail.Session.getTransport(Session.java:668)

        at javax.mail.Session.getTransport(Session.java:648)

        at javax.mail.Session.getTransport(Session.java:705)

        at javax.mail.Transport.send0(Transport.java:192)

        at javax.mail.Transport.send(Transport.java:124)

        at SendMailTLS2.main(SendMailTLS2.java:41)

>

My code is:

import java.util.Properties;

import javax.mail.Message;

import javax.mail.MessagingException;

import javax.mail.PasswordAuthentication;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

public class SendMailTLS2 {

public static void main(String[] args) {

final String username = "***@gmail.com";

final String password = "&&";

Properties props = new Properties();

props.put("mail.smtp.auth", "true");

props.put("mail.smtp.starttls.enable", "true");

props.put("mail.smtp.host", "smtp.gmail.com");

props.put("mail.smtp.port", "587");

Session session = Session.getInstance(props,

new javax.mail.Authenticator() {

protected PasswordAuthentication getPasswordAuthentication() {

return new PasswordAuthentication(username, password);

}

});

try {

Message message = new MimeMessage(session);

message.setFrom(new InternetAddress("**@gmail.com"));

message.setRecipients(Message.RecipientType.TO,

InternetAddress.parse("aa@yahoo.com"));

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);

}

}

}

Some body please guide me.

Zulfi.

This post has been answered by Zulfi Khan on Aug 12 2017
Jump to Answer

Comments

Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Sep 10 2017
Added on Aug 9 2017
13 comments
3,946 views