Moin,
ich versuche mir eine Möglichkeit zu schaffen über die Kommandozeile Mails mittels SMTP Authentifizierung zu verschicken. Eine Variante der Implementierung habe ich auch im Netz gefunden, doch erhalte ich beim Ausführen immer folgende Fehlermeldung:
java.lang.NoClassDefFoundError: javax/activation/DataSource
at SMTPAuth.send(SMTPAuth.java:29)
at SMTPAuth.main(SMTPAuth.java:48)
Exception in thread "main"
Anbei kurz noch die Klassen:
Und
Leider kann weiß ich nicht, weshalb diese Exception geworfen wird. Seltsamerweise läuft das ganze im JBuilder ohne Probleme, aus Eclipse heraus dafür dann wieder nicht.
Danke für Eure Hilfe!
Ben
ich versuche mir eine Möglichkeit zu schaffen über die Kommandozeile Mails mittels SMTP Authentifizierung zu verschicken. Eine Variante der Implementierung habe ich auch im Netz gefunden, doch erhalte ich beim Ausführen immer folgende Fehlermeldung:
java.lang.NoClassDefFoundError: javax/activation/DataSource
at SMTPAuth.send(SMTPAuth.java:29)
at SMTPAuth.main(SMTPAuth.java:48)
Exception in thread "main"
Anbei kurz noch die Klassen:
import javax.mail.*;
import javax.mail.internet.*;
public class SMTPAuth {
public static void send(String subject, String text, String to) {
//Get system properties
java.util.Properties props = System.getProperties();
//Setup mail server
props.put("mail.smtp.host", "smtp.web.de");
Authenticator auth = new PopupAuthenticator();
props.put("mail.smtp.auth", "true");
Session session = Session.getDefaultInstance(props, auth);
//Define message
MimeMessage message = new MimeMessage(session);
try {
message.setFrom(new InternetAddress("a@x.com"));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(
to));
message.setSubject(subject);
message.setText(text);
Transport.send(message);
} catch (MessagingException e) {
System.out.println(e.getMessage());
}
}
public static void main(String[] args) {
if (args.length != 3) {
System.out.println("Nicht genügend Parameter");
} else {
send(args[0], args[1], args[2]);
}
}
}
Und
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
class PopupAuthenticator
extends Authenticator {
public PasswordAuthentication getPasswordAuthentication() {
String username, password;
username = "user";
password = "pass";
return new PasswordAuthentication(username, password);
}
}
Leider kann weiß ich nicht, weshalb diese Exception geworfen wird. Seltsamerweise läuft das ganze im JBuilder ohne Probleme, aus Eclipse heraus dafür dann wieder nicht.
Danke für Eure Hilfe!
Ben