Est-il possible d'envoyer du courrier avec Javamail sans authentification?

J'ai été en copiant ce code
http://www.tutorialspoint.com/java/java_sending_email.htm

et je reçois le message d'erreur

javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 465;
nested exception is:
java.net.SocketException: Connection reset
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1963)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:654)
at javax.mail.Service.connect(Service.java:345)
at javax.mail.Service.connect(Service.java:226)
at javax.mail.Service.connect(Service.java:175)
at racetiming.MailSender.send(MailSender.java:68)

Toutes les solutions, je suis à la recherche sont à l'aide de l'authentification pour se connecter à un serveur de messagerie, mais je vais essayer de le faire sans connexion. N'est-ce pas possible? Semble que les tutoriels sont en train de le faire, sans informations d'identification.

Voici l'intégralité de mon code.

public class MailSender
{
public static void send(Racer r, String filename){
  //Recipient's email ID needs to be mentioned.
  String to = r.getEmail();

  //Sender's email ID needs to be mentioned
  String from = "[email protected]";

  //Assuming you are sending email from localhost
  String host = "localhost";

  //Get system properties
  Properties properties = System.getProperties();

  //Setup mail server
  properties.setProperty("mail.smtp.host", host);
  properties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");

  //Get the default Session object.
  Session session = Session.getDefaultInstance(properties);

  try{
     //Create a default MimeMessage object.
     MimeMessage message = new MimeMessage(session);

     //Set From: header field of the header.
     message.setFrom(new InternetAddress(from));

     //Set To: header field of the header.
     message.addRecipient(Message.RecipientType.TO,
                              new InternetAddress(to));

     //Set Subject: header field
     message.setSubject("Report for " + r.getName());

     //Create the message part 
     BodyPart messageBodyPart = new MimeBodyPart();

     //Fill the message
     messageBodyPart.setText("See attachment");

     //Create a multipart message
     Multipart multipart = new MimeMultipart();

     //Set text message part
     multipart.addBodyPart(messageBodyPart);

     //Part two is attachment
     messageBodyPart = new MimeBodyPart();
     DataSource source = new FileDataSource(filename);
     messageBodyPart.setDataHandler(new DataHandler(source));
     messageBodyPart.setFileName(filename);
     multipart.addBodyPart(messageBodyPart);

     //Send the complete message parts
     message.setContent(multipart);

     //Send message
     Transport transport = session.getTransport("smtps");
     transport.connect();
     transport.sendMessage(message, message.getAllRecipients());
     System.out.println("Sent message successfully....");
  }catch (MessagingException mex) {
     mex.printStackTrace();
  }
   }
}

OriginalL'auteur Michael Groleau | 2013-11-06