Witam, skotrzystałem z napisanego kodu do wysyłania maili znajdującego się pod tym adresem:
http://mkorwel.blogspot.com/2010/05/javamail-wysanie-emaila-przy-pomocy.html
pozwole sobie go tu rowniez umiesic :

package com.blogspot.mkorwel.mail;

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;

/**
 * 
 * @author Mateusz Korwel
 * 
 */
public class SendMail {

 private static final String HOST = "smtp.gmail.com";
 private static final int PORT = 465;
 // Adres email osby która wysyła maila
 private static final String FROM = "[email protected]";
 // Hasło do konta osoby która wysyła maila
 private static final String PASSWORD = "xxx";
 // Adres email osoby do której wysyłany jest mail
 private static final String TO = "[email protected]";
 // Temat wiadomości
 private static final String SUBJECT = "Hello World";
 // Treść wiadomości
 private static final String CONTENT = "To mój pierwszy mail wysłany za pomocą JavaMailAPI.";

 public static void main(String[] args) {
  try {
   new SendMail().send();
  } catch (MessagingException e) {
   e.printStackTrace();
  }
 }

 public void send() throws MessagingException {

  Properties props = new Properties();
  props.put("mail.transport.protocol", "smtps");
  props.put("mail.smtps.auth", "true");

  // Inicjalizacja sesji
  Session mailSession = Session.getDefaultInstance(props);

  // ustawienie debagowania, jeśli nie chcesz oglądać logów to usuń
  // linijkę poniżej lub zmień wartość na false
  mailSession.setDebug(true);

  // Tworzenie wiadomości email
  MimeMessage message = new MimeMessage(mailSession);
  message.setSubject(SUBJECT);
  message.setContent(CONTENT, "text/plain; charset=ISO-8859-2");
  message.addRecipient(Message.RecipientType.TO, new InternetAddress(TO));

  Transport transport = mailSession.getTransport();
  transport.connect(HOST, PORT, FROM, PASSWORD);

  // wysłanie wiadomości
  transport.sendMessage(message, message
    .getRecipients(Message.RecipientType.TO));
  transport.close();
 }
}

Działa ok.
Jednak gry próbuję wysłac maila z innego konta niż gmail, pojawia się błąd.

javax.mail.MessagingException: Could not connect to SMTP host: qmail.ramsat.pl, port: 587;
nested exception is:
javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?

Przykładowo gdy chce wysłać maila z poczty interii konifguruję następująco:

private static final String HOST = "poczta.interia.pl";
 private static final int PORT = 587;
 private static final String FROM = "[email protected]";

Być moze chodzi o to ze gmail korzysta z połaczenia SSL ?
Jeśli ktos posiada gotowy protokól do wysyłania maili z innego serwera niż gmail bylbym wdzieczny