Hallo
ich wollte heut mal etwas mit JavaMail spielen. Ich habe mir die 1.4er Version runter geladen, und ein Beispiel aus dem Tutorial bei sun rausgezogen: Einfach mal schauen, was im Posteingang ist.
Wer das Tutorial kennt, sollte das kennen:
Ist das Postfach leer, läuft das komplette Programm durch, ohne Probleme. Nun habe ich mir ne testmail geschickt, und in der Zeile mit
kommt bei mir folgende exception:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/activation/DataSource
at com.sun.mail.pop3.POP3Folder.createMessage(POP3Folder.java:317)
at com.sun.mail.pop3.POP3Folder.getMessage(POP3Folder.java:298)
at javax.mail.Folder.getMessages(Folder.java:929)
at mail_test.main(mail_test.java:82)
Ich habe auch verschiedene Postfächer versucht. Mit dem selben Ergebniss. Immer bei folder.getMessages() kommt die Exception, wenn das Postfach eine oder mehrere Mails beinhaltet. Was mache ich verkehrt?
Zur Info, falls wichtig ... ich habe es einmal mit gmx und bei meinem lokalen DSL Provider versucht und ihr könnt davon ausgehen, daß ich die Strings host, username und password richtig ausgefüllt habe.
ich wollte heut mal etwas mit JavaMail spielen. Ich habe mir die 1.4er Version runter geladen, und ein Beispiel aus dem Tutorial bei sun rausgezogen: Einfach mal schauen, was im Posteingang ist.
Wer das Tutorial kennt, sollte das kennen:
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
import javax.mail.*;
/*
* Erstellt am 07.06.2006 08:46:52
*
* TODO
*/
public class mail_test
{
public mail_test()
{
super();
// TODO Automatisch erstellter Konstruktoren-Stub
}
/**
* @param args
* @throws MessagingException
* @throws IOException
*/
public static void main(String[] args) throws MessagingException, IOException
{
String host = "mail.hostname";
String username = "name";
String password = "pwd";
// Create empty properties
Properties props = new Properties();
// Get session
Session session = Session.getDefaultInstance(props, null);
// Get the store
Store store = session.getStore("pop3");
// Connect to store
store.connect(host, username, password);
// Get folder
Folder folder = store.getFolder("INBOX");
// Open read-only
folder.open(Folder.READ_ONLY);
BufferedReader reader = new BufferedReader (
new InputStreamReader(System.in));
// Get directory
Message message[] = folder.getMessages();
for (int i=0, n=message.length; i<n; i++) {
// Display from field and subject
System.out.println(i + ": " + message[i].getFrom()[0]
+ "\t" + message[i].getSubject());
System.out.println("Do you want to read message? [YES to read/QUIT to end]");
String line = reader.readLine();
if ("YES".equals(line)) {
// Display message content
System.out.println(message[i].getContent());
} else if ("QUIT".equals(line)) {
break;
}
}
// Close connection
folder.close(false);
store.close();
}
}
Code:
Message message[] = folder.getMessages();
Exception in thread "main" java.lang.NoClassDefFoundError: javax/activation/DataSource
at com.sun.mail.pop3.POP3Folder.createMessage(POP3Folder.java:317)
at com.sun.mail.pop3.POP3Folder.getMessage(POP3Folder.java:298)
at javax.mail.Folder.getMessages(Folder.java:929)
at mail_test.main(mail_test.java:82)
Ich habe auch verschiedene Postfächer versucht. Mit dem selben Ergebniss. Immer bei folder.getMessages() kommt die Exception, wenn das Postfach eine oder mehrere Mails beinhaltet. Was mache ich verkehrt?
Zur Info, falls wichtig ... ich habe es einmal mit gmx und bei meinem lokalen DSL Provider versucht und ihr könnt davon ausgehen, daß ich die Strings host, username und password richtig ausgefüllt habe.