Hallo zusammen.
Ich versuche gerade in einer Webanwendung eine Konfigurationsseite für einen SMTP-Server zu schreiben. Die Oberfläche steht bereits. Allerdings funktioniert die Programmlogik noch nicht so, wie ich mir das dachte. Vom Prinzip her soll es so ablaufen, wie z.B. bei Thunderbird. Ich geben meine Email-Adresse/Benutzername, Passwort, SMTP-Hostname und den Port ein und kann dann die Verbindung testen, bevor ich sie abspeicher. Hier mal mein Code, den ich bisher habe:
Gebe ich jetzt z.B. meine Zugangsdaten für mein Gmail-Konto ein (smtp.gmail.com, Port: 587) dann funktioniert alles bestens. Gebe ich jetzt die Daten meines anderen Mail-Kontos ein (smtp.andererServer.com, Port: 25; der Server nutzt Port 25 für TLS) ein und ich weiß 100%ig, dass die ALLE Daten korrekt sind, funktioniert es nicht. Ich hab echt keinen Schimmer woran es liegt.
Ich würde mich echt über Hilfe freuen, um eine Lösung zu bekommen, die Allgemein gültig ist und mit allen Eingaben umgehen kann. 
Viele Grüße und schonmal vielen Dank für jegliche Unterstützung!
Ich versuche gerade in einer Webanwendung eine Konfigurationsseite für einen SMTP-Server zu schreiben. Die Oberfläche steht bereits. Allerdings funktioniert die Programmlogik noch nicht so, wie ich mir das dachte. Vom Prinzip her soll es so ablaufen, wie z.B. bei Thunderbird. Ich geben meine Email-Adresse/Benutzername, Passwort, SMTP-Hostname und den Port ein und kann dann die Verbindung testen, bevor ich sie abspeicher. Hier mal mein Code, den ich bisher habe:
Java:
public class SMTPConnection {
public boolean testConnection (String account, String hostname, String password, int port) {
try {
Properties props = new Properties();
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.auth", "true");
Session session = Session.getInstance(props, null);
session.setDebug(true);
Transport transport = session.getTransport("smtp");
transport.connect(hostname, port, account, password);
transport.close();
System.out.println("success");
} catch (AuthenticationFailedException e) {
System.out.println("AuthenticationFailedException - for authentication failures");
e.printStackTrace();
return false;
} catch (MessagingException e) {
System.out.println("for other failures");
e.printStackTrace();
return false;
}
}
return true;
}
Gebe ich jetzt z.B. meine Zugangsdaten für mein Gmail-Konto ein (smtp.gmail.com, Port: 587) dann funktioniert alles bestens. Gebe ich jetzt die Daten meines anderen Mail-Kontos ein (smtp.andererServer.com, Port: 25; der Server nutzt Port 25 für TLS) ein und ich weiß 100%ig, dass die ALLE Daten korrekt sind, funktioniert es nicht. Ich hab echt keinen Schimmer woran es liegt.
Viele Grüße und schonmal vielen Dank für jegliche Unterstützung!