Erro com javamail[não resolvido]

2 respostas
xandevieira
Boa tarde, estou usando o seguinte codigo para testar envio de e-mail:
import java.io.File;
import java.util.Properties;

import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;


public class EmailUtil {
	
	
	public static void main(String[] args) throws AddressException {
		try{
			File anexo = new File("anexo.PDF");
			InternetAddress[] address = {new InternetAddress("[email removido]")};
			sendMail(address, "Alexandre Vieira de Souza <[email removido]>", "usuario", "senha!", "Titulo", "Mensagem do corpo do email", anexo);
	 	} catch (Exception e) {
			e.printStackTrace();
		} finally {
			System.out.println("Finalizado ...");
		}
	}
	
    public static void sendMail(InternetAddress[] address, String de, String usuario, String senha, String assunto, String mensagem, File anexo) throws Exception {
    	Properties props = System.getProperties();
		props.put("mail.smtp.auth", "true");
		Session session = Session.getDefaultInstance(props);
        Transport transport = session.getTransport("smtp");
        MimeMessage message = new MimeMessage(session);
        message.setFrom(new InternetAddress(de));
        message.setSubject(assunto);
        MimeBodyPart textPart = new MimeBodyPart();
        textPart.setContent(mensagem, "text/html; charset=UTF-8");
        Multipart mp = new MimeMultipart();
        mp.addBodyPart(textPart);
        if (anexo != null) {
            MimeBodyPart attachFilePart = new MimeBodyPart();
            FileDataSource fds = new FileDataSource(anexo);
            attachFilePart.setDataHandler(new DataHandler(fds));
            attachFilePart.setFileName(fds.getName());
            mp.addBodyPart(attachFilePart);
        }
        message.setSentDate(DateUtils.getDataAtual2());
        message.setContent(mp);
        message.addRecipients(Message.RecipientType.TO, address);
        transport.connect("mail.email.com.br", usuario, senha);
        transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
        transport.close();
    }
	
}
so que da a seguinte mensagem ao enviar:
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream
	at javax.mail.Session.loadProvidersFromStream(Session.java:928)
	at javax.mail.Session.access$000(Session.java:174)
	at javax.mail.Session$1.load(Session.java:870)
	at javax.mail.Session.loadAllResources(Session.java:1130)
	at javax.mail.Session.loadProviders(Session.java:886)
	at javax.mail.Session.<init>(Session.java:210)
	at javax.mail.Session.getDefaultInstance(Session.java:299)
	at javax.mail.Session.getDefaultInstance(Session.java:339)
	at br.com.bolao.util.EmailUtil.sendMail(EmailUtil.java:37)
	at br.com.bolao.util.EmailUtil.main(EmailUtil.java:26)

Numa outra aplicação rola sem problema, alguem tem alguma ideia do que seja o problema?

Todos os jars necessarios estão no class path

2 Respostas

D

Boa tarde,

Não faltou no seu classpath - mail.jar ?

t+

xandevieira

Não, como havia colocado todos os jars estão no path


Criado 19 de abril de 2010
Ultima resposta 19 de abr. de 2010
Respostas 2
Participantes 2