why javamail fails with an authentication Exception ?

Posted by saravana on Stack Overflow See other posts from Stack Overflow or by saravana
Published on 2011-03-13T08:05:12Z Indexed on 2011/03/13 8:09 UTC
Read the original article Hit count: 473

Filed under:
|
package com.bcs;

import java.util.Properties;

import javax.mail.Message;

import javax.mail.MessagingException;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;


public class SendMailTLS {

    public static void main(String[] args) {
        String host = "smtp.gmail.com";
        int port = 587;
        String username = "[email protected]";
        String password = "bar";

        Properties props = new Properties();
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.starttls.enable", "true");

        Session session = Session.getInstance(props);

        try {

            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(""));
            message.setRecipients(Message.RecipientType.TO,
                InternetAddress.parse(""));
            message.setSubject("Testing Subject");
            message.setText("Dear Mail Crawler," +
                    "\n\n No spam to my email, please!");

            Transport transport = session.getTransport("smtp");
            transport.connect(host, port, username, password);

            Transport.send(message);

            System.out.println("Done");

        } catch (MessagingException e) {
            throw new RuntimeException(e);
        }
    }
}

I have given all the necessary inputs . But still it fails with

Exception in thread "main" java.lang.RuntimeException: javax.mail.AuthenticationFailedException: failed to connect, no password specified?
    at com.bcs.SendMailTLS.main(SendMailTLS.java:43)
Caused by: javax.mail.AuthenticationFailedException: failed to connect, no password specified?
    at javax.mail.Service.connect(Service.java:329)
    at javax.mail.Service.connect(Service.java:176)
    at javax.mail.Service.connect(Service.java:125)
    at javax.mail.Transport.send0(Transport.java:194)
    at javax.mail.Transport.send(Transport.java:124)
    at com.bcs.SendMailTLS.main(SendMailTLS.java:38)

I am new to java mail.Any help would be greatly appreciated.

© Stack Overflow or respective owner

Related posts about java

Related posts about javamail