Salve Galera,
Baixei a API JavaMail no site da Sun e acho que estou com probleminhas para configura-la, Setei o arquivo mail.jar no CLASSPATH.
Estou com um código simples qeu achei em um site mais o mesmo não está rodando, creio que é só erro de pacote, definição, olhem o código.:
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
public class Spammer {
public static void main(String args[]) {
if (args.length < 4) {
System.out.println("Forma de uso: java Spammer <arquivo msg> <arquivo emails> <from> <subject>");
System.exit(1);
}
try {
postMail(args[0], args[1], args[2], args[3]);
}
catch (MessagingException e) {
System.out.println("Erro: " + e);
}
}
public static void postMail(String msg_file, String mails_file, String from,
String subject) throws MessagingException {
final boolean debug = false;
//Set the host smtp address
Properties props = new Properties();
props.put("mail.smtp.host", "localhost");
// create some properties and get the default Session
Session session = Session.getDefaultInstance(props, null);
session.setDebug(debug);
// create a message
Message msg = new MimeMessage(session);
// set the from and to address
InternetAddress addressFrom = new InternetAddress(from);
// Sux, na documentacao que eu tenho diz que da para usar um objeto
// Address simples, mas so funciona com um array de objetos. Entao
// fiz essa gambiarra pq ja tava de saco cheio pra pensar numa
// outra solucao :)
Address to[] = new InternetAddress[1];
msg.setFrom(addressFrom);
msg.setSubject(subject);
StringBuffer mensagem = new StringBuffer();
String linha;
try {
// Arquivo com os enderecos de email ( um por linha )
BufferedReader reader = new BufferedReader(new FileReader(mails_file));
// Arquivo com a mensagem
BufferedReader msg1 = new BufferedReader(new FileReader(msg_file));
// Le todo o conteudo da mensagem a ser enviada
while ((linha = msg1.readLine()) != null) {
mensagem.append(linha);
}
msg1.close();
msg.setContent(mensagem, "text/html");
// Le cada endereco de email e envia
while ((linha = reader.readLine()) != null) {
to[0] = new InternetAddress(linha);
msg.setRecipients(Message.RecipientType.TO, to);
Transport.send(msg);
Thread.sleep(10);
}
}
catch (Exception e) {
System.out.println("Erro: " + e);
}
}
}
ele apresenta os erros na hora de compilar:
“Spammer.java”: package javax.mail does not exist at line 4, column 1
“Spammer.java”: package javax.mail.internet does not exist at line 5, column 1
“Spammer.java”: cannot resolve symbol: class MessagingException in class Spammer at line 24, column 54
“Spammer.java”: cannot resolve symbol: class MessagingException in class Spammer at line 18, column 12
“Spammer.java”: cannot resolve symbol: class Session in class Spammer at line 32, column 5
“Spammer.java”: cannot resolve symbol: variable Session in class Spammer at line 32, column 23
“Spammer.java”: cannot resolve symbol: class Message in class Spammer at line 36, column 5
“Spammer.java”: cannot resolve symbol: class MimeMessage in class Spammer at line 36, column 23
“Spammer.java”: cannot resolve symbol: class InternetAddress in class Spammer at line 39, column 5
“Spammer.java”: cannot resolve symbol: class InternetAddress in class Spammer at line 39, column 39
“Spammer.java”: cannot resolve symbol: class Address in class Spammer at line 45, column 5
“Spammer.java”: cannot resolve symbol: class InternetAddress in class Spammer at line 45, column 24
“Spammer.java”: cannot resolve symbol: class InternetAddress in class Spammer at line 69, column 21
“Spammer.java”: package Message does not exist at line 70, column 35
“Spammer.java”: cannot resolve symbol: variable Transport in class Spammer at line 71, column 9
Desculpem mas é complicado demais aprender estas coisas sozinho… já bati a cabeça hoje, inserindo pacotes, definindo pacotes e nada! Gostaria de uma ajuda de vocÊs!
Grato