JavaMail

Peguei um exemplo q um cara aqui do guj postou. Ele está conectando ao servidor de SMTP normalmente, no entanto na hora de enviar o email dá erro. Segue abaixo o codigo, o erro e também a indicação, no codigo, de onde o erro acontece.

import java.util.Date;
import java.util.Properties;

import javax.mail.Address;
import javax.mail.Authenticator;
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 Lawrence Barbosa
 * @version 26/03/2004 - 15:13:24 EnviaEmail.java
 * 
 * Classe generia utilizada para envio de email
 */

public class EnviaEmail extends Authenticator
{

    Session session = null;
    public void enviaEmail(String bodyEmail, String assunto, String remetente, Address 
destTo[], Address destCc[], Address destBcc[], String srvSmtp, String tpEmail, String
user, String passwd, String fileAttach) throws MessagingException
    {

        try
        {

            if (!srvSmtp.trim().equalsIgnoreCase(""))
            {

                // Set the host smtp address
                Properties props = new Properties();
                props.put("mail.smtp.host", srvSmtp);

                // Create some properties and get the default Session
                session = session.getInstance(props, null);

                // Create a message
                Message msg = new MimeMessage(session);

                // Remetente
                msg.setFrom(new InternetAddress(remetente));

                // Destinatario(s)
                if (destTo != null)
                {
                    msg.setRecipients(Message.RecipientType.TO, destTo);
                }

                // Destinatario(s) com Copia
                if (destCc != null)
                {
                    msg.setRecipients(Message.RecipientType.CC, destCc);
                }

                // Destinatario(s) com Copia Oculta
                if (destBcc != null)
                {
                    msg.setRecipients(Message.RecipientType.BCC, destBcc);
                }

                // Assunto da mensagem
                msg.setSubject(assunto);

                // Verificando tipo de Envio
                if (tpEmail.trim().equalsIgnoreCase("HTML"))
                {
                    // Montando corpo da mensagem no formato HTML
                    msg.setContent(bodyEmail, "text/html");
                }
                else
                {
                    msg.setText(bodyEmail);
                }

                if (!fileAttach.trim().equalsIgnoreCase(""))
                {
                    // Envia Arquivo Se nescessario
                    msg.setFileName(fileAttach);
                }

                // Adicionando a data atual a mensagem
                msg.setSentDate(new Date());

                // Enviando mensagem (tentando)
                Transport transport = session.getTransport("smtp");
                System.out.println("Conectando no servidor de smtp:" + srvSmtp + "...");
                transport.connect(srvSmtp, user, passwd);

                if (transport.isConnected())
                {
                    System.out.println("Conectado [" + srvSmtp + "]");
                    System.out.println("Enviando Mensagem...");
                    transport.sendMessage(msg, destTo);  // O ERRO ACONTECE AQUI !!!
                    System.out.println("Mensagem Enviada!!!");
                }
            }
        }
        catch (MessagingException e)
        {
            e.printStackTrace();
        }
    }
}

Erro

com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first 65sm2234045wra

	at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1333)
	at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:906)
	at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:535)
	at EnviaEmail.enviaEmail(EnviaEmail.java:97)
	at VerificaLog.main(VerificaLog.java:16)

Parece que seu servidor smtp só suporta login via TLS, não sei muito sobre o assunto, mas acho que é por aí que vc deve pesquisar…

Era isso mesmo !!! Mudei o servidor e funcionou normalmente. Agora, como faço para enviar um email de um servidor smtp que só suporta login via TLS ??

valeu !!!