Email Server Connection Problem

javaBoon86

Mitglied
Mir fehlen die richtigen Einstellungen um mich mit dem Konto zu verbinden. Kennt sich jemand aus mit der Art ?


lg Tom




Java:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.util.Properties;

import java.io.InputStream;
import java.io.FileInputStream;
import java.io.IOException;


import jakarta.mail.Authenticator;
import jakarta.mail.Message;
import jakarta.mail.MessagingException;
import jakarta.mail.PasswordAuthentication;
import jakarta.mail.Session;
import jakarta.mail.Transport;
import jakarta.mail.internet.InternetAddress;
import jakarta.mail.internet.MimeMessage;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class NeueNachricht extends JDialog {
    // automatisch über Eclipse erzeugt
    private static final long serialVersionUID = -5496318621928815910L;

    // für die Eingabefelder
    private JTextField empfaenger, betreff;
    private JTextArea inhalt;
    // für die Schaltflächen
    private JButton ok, abbrechen;

    // die innere Klasse für den ActionListener
    class NeuListener implements ActionListener {
        @Override
        public void actionPerformed(ActionEvent e) {
            // wurde auf OK geklickt?
            if (e.getActionCommand().equals("senden"))
                // dann die Daten übernehmen
                senden();
            // wurde auf Abbrechen geklickt?
            if (e.getActionCommand().equals("abbrechen"))
                // dann Dialog schließen
                dispose();
        }
    }

    // der Konstruktor
    public NeueNachricht(JFrame parent, boolean modal) {
        super(parent, modal);
        setTitle("Neue Nachricht");
        // die Oberfläche erstellen
        initGui();

        // Standardoperation setzen
        // hier den Dialog ausblenden und löschen
        setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
    }

    private void initGui() {
        setLayout(new BorderLayout());
        JPanel oben = new JPanel();
        oben.setLayout(new GridLayout(0, 2));
        oben.add(new JLabel("Empfänger:"));
        empfaenger = new JTextField();
        oben.add(empfaenger);
        oben.add(new JLabel("Betreff:"));
        betreff = new JTextField();
        oben.add(betreff);
        add(oben, BorderLayout.NORTH);
        inhalt = new JTextArea();
        // den Zeilenumbruch aktivieren
        inhalt.setLineWrap(true);
        inhalt.setWrapStyleWord(true);
        // das Feld setzen wir in ein Scrollpane
        JScrollPane scroll = new JScrollPane(inhalt);
        scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
        add(scroll);

        JPanel unten = new JPanel();
        // die Schaltflächen
        ok = new JButton("Senden");
        ok.setActionCommand("senden");
        abbrechen = new JButton("Abbrechen");
        abbrechen.setActionCommand("abbrechen");

        NeuListener listener = new NeuListener();
        ok.addActionListener(listener);
        abbrechen.addActionListener(listener);

        unten.add(ok);
        unten.add(abbrechen);
        add(unten, BorderLayout.SOUTH);

        // anzeigen
        setSize(600, 300);
        setVisible(true);
    }

    
    
    
    
    // die Methode verschickt die Nachricht
    private void senden() {
        // für die Sitzung
        Session sitzung;

        // die Verbindung herstellen
        sitzung = verbindungHerstellen();
        // die Nachricht verschicken und speichern
        nachrichtVerschicken(sitzung);
        nachrichtSpeichern();
    }

    private static Session verbindungHerstellen() {
        // Pfad zur Konfigurationsdatei
        String konfigurationsdatei = "src/config.txt";

        // Eigenschaften-Objekt erstellen
        Properties eigenschaften = new Properties();

        try (InputStream input = new FileInputStream(konfigurationsdatei)) {
            // Konfigurationsdatei laden
            eigenschaften.load(input);

            // Benutzernamen und Kennwort aus den Eigenschaften extrahieren
            String benutzername = eigenschaften.getProperty("Benutzername");
            String kennwort = eigenschaften.getProperty("Kennwort");

            // Serveradresse aus den Eigenschaften extrahieren
            String server = eigenschaften.getProperty("Server");

            // die Eigenschaften setzen
            eigenschaften.put("mail.smtp.auth", "true");
            eigenschaften.put("mail.smtp.starttls.enable", "true");
            eigenschaften.put("mail.smtp.host", server);
            eigenschaften.put("mail.smtp.port", "587");

            // das Session-Objekt erstellen
            Session sitzung = Session.getInstance(eigenschaften, new Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(benutzername, kennwort);
                }
            });

            return sitzung;
        } catch (IOException e) {
            // Behandlung der IOException
            e.printStackTrace();
        }

        return null; // oder eine andere geeignete Rückgabewert, falls etwas schiefgeht
    }

    private void nachrichtVerschicken(Session sitzung) {
        // der Absender
        String absender = "schulekonto5@gmx.ch";

        try {
            // eine neue Nachricht vom Typ MimeMessage erzeugen
            MimeMessage nachricht = new MimeMessage(sitzung);
            // den Absender setzen
            nachricht.setFrom(new InternetAddress(absender));
            // den Empfänger
            nachricht.setRecipients(Message.RecipientType.TO, InternetAddress.parse(empfaenger.getText()));
            // den Betreff
            nachricht.setSubject(betreff.getText());

            // Originalnachricht abrufen
            String originalText = inhalt.getText();

            // Prüfen, ob es sich um eine Weiterleitung oder eine Antwort handelt
            if (originalText.startsWith("WG:")) {
                // Weiterleitung
                nachricht.setText("----- Text der ursprünglichen Nachricht ----\n" + originalText);
            } else if (originalText.startsWith("AW:")) {
                // Antwort
                // Empfängeradresse auf die des Absenders setzen
                nachricht.setRecipients(Message.RecipientType.TO, InternetAddress.parse(absender));

                // AW: vor den Betreff setzen
                String neuerBetreff = "AW: " + betreff.getText();
                nachricht.setSubject(neuerBetreff);

                // Originalnachricht in den neuen Text einfügen
                String neuerText = "----- Text der ursprünglichen Nachricht ----\n" + originalText + "\n\n";

                // den neuen Text setzen
                neuerText += inhalt.getText();
                nachricht.setText(neuerText);

                // die Nachricht verschicken
                Transport.send(nachricht);

                JOptionPane.showMessageDialog(this, "Die Nachricht wurde verschickt.");

                // den Dialog schließen
                dispose();

            }
        } catch (MessagingException e) {
            JOptionPane.showMessageDialog(this, "Problem: \n" + e.toString());
        }
    }


        private void nachrichtSpeichern() {
            // für die Verbindung
            Connection verbindung;

            // die Datenbank öffnen
            verbindung = MiniDBTools.oeffnenDB("jdbc:derby:mailDB");
            try {
                // einen Eintrag in der Tabelle gesendet anlegen
                // über ein vorbereitetes Statement
                PreparedStatement prepState;
                prepState = verbindung.prepareStatement("insert into gesendet (empfaenger, betreff, inhalt) values (?, ?, ?)");
                prepState.setString(1, empfaenger.getText());
                prepState.setString(2, betreff.getText());
                prepState.setString(3, inhalt.getText());
                // das Statement ausführen
                prepState.executeUpdate();
                verbindung.commit();

                // Verbindung schließen
                prepState.close();
                verbindung.close();
                // und die Datenbank schließen
                MiniDBTools.schliessenDB("jdbc:derby:mailDB");
            } catch (Exception e) {
                JOptionPane.showMessageDialog(this, "Problem: \n" + e.toString());
            }
        }
    }
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C EML Email Text in String wandeln Allgemeine Java-Themen 9
L Input/Output Email mit großer Pdf Anhang auslesen? Allgemeine Java-Themen 6
TimEtech Email senden - web.de ; Fehlercode Allgemeine Java-Themen 2
OnDemand Java Email Templates Allgemeine Java-Themen 2
T @Email Allgemeine Java-Themen 42
B Java Mail: Prüfen, ob Email hat ein Anhang oder nicht Allgemeine Java-Themen 2
B Java Mail: Unterscheidung bei Attachments und eingefügte Bilder in Email Allgemeine Java-Themen 18
V EMail, Attachments auslesen von einer Email Allgemeine Java-Themen 0
B Bei Email: FW / AW... - Hilfe bei String suche Allgemeine Java-Themen 21
S Validation Null aber nicht Blank und muss Email sein Allgemeine Java-Themen 22
C Email Versand überprüfen Allgemeine Java-Themen 1
C Email mit public-key verschlüsseln Allgemeine Java-Themen 0
D Best Practice Gesamten Bildschirminhalt auslesen und Email schicken sobald kein Pixel sich ändert Allgemeine Java-Themen 11
M Email-Versand Java+Outlook Allgemeine Java-Themen 8
T Email versenden Allgemeine Java-Themen 1
P "Email" versenden mit Anhang Allgemeine Java-Themen 5
F JavaMail - Lokale eMail-Datei einlesen und parsen? Allgemeine Java-Themen 9
A Email-Programm aus Applet öffnen Allgemeine Java-Themen 4
A Email versenden mehrere Zeilen Allgemeine Java-Themen 10
H RegEX und eMail Allgemeine Java-Themen 4
foobar Email mit Standard Mailclient versenden Allgemeine Java-Themen 12
Developer_X Email per Java senden Allgemeine Java-Themen 81
D Email versand bei einem festgelegten Datum Allgemeine Java-Themen 11
C automatische email nach 6 tagen! Allgemeine Java-Themen 14
D Email an mehrer Absender versenden Allgemeine Java-Themen 3
M Email - Informationen auslesen Allgemeine Java-Themen 3
N EMail-Versandt mit Java 6: komplexer Body Allgemeine Java-Themen 4
M kennt jemand nen gute email client in java mit imap? Allgemeine Java-Themen 3
L javaformular auf website (eingabe per email zusenden) Allgemeine Java-Themen 3
L Java & Excel & EMail Allgemeine Java-Themen 2
L Ping Probe auf hinteren Teil einer Email Adresse (nach @) Allgemeine Java-Themen 5
G EMail Client Allgemeine Java-Themen 7
K Email mit Anhang über mailto:. versenden Allgemeine Java-Themen 11
S eMail Dienst mit Java Allgemeine Java-Themen 3
A Regulärer Ausdruck EMail-Prüfung Allgemeine Java-Themen 3
S java mail API, email versenden Allgemeine Java-Themen 8
S standard-email-programm öffnen Allgemeine Java-Themen 4
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
E Server Client Audio Allgemeine Java-Themen 6
E Server Client Audio Allgemeine Java-Themen 0
Jose05 Speicherung auf einem Server Allgemeine Java-Themen 1
D Live-Scripting im Server Allgemeine Java-Themen 6
Monokuma Threadproblem mit Sockets und Server Allgemeine Java-Themen 7
T imagej-server NullPointerException Allgemeine Java-Themen 1
TonioTec Api für Datenaustausch zwischen Client und Server Allgemeine Java-Themen 0
W Server-Thread schreibt nicht alle Dateien Allgemeine Java-Themen 6
C Java RMI Client - Server Allgemeine Java-Themen 0
B Datei/Ordner auf Server zugreifen/erstellen Allgemeine Java-Themen 2
M TomEE auf Windows Server 2016 installieren Allgemeine Java-Themen 4
bueseb84 Git : Mehrere Server verwenden Allgemeine Java-Themen 3
P Am Application Server - Selbe files aber trotzdem CNF Allgemeine Java-Themen 2
KeexZDeveoper Zugriff auf Methoden vom Server Allgemeine Java-Themen 7
J Java - hoher Ramverbraucht auf WTS Server Allgemeine Java-Themen 8
C TCP Server und BufferedReader Leerstring im Stream? Allgemeine Java-Themen 5
C Logfile upload zu einem externen filezilla sftp server Allgemeine Java-Themen 6
S Simples Client Server Setup in Java Allgemeine Java-Themen 4
K Server mieten, Berechnungen darauf ausführen Allgemeine Java-Themen 14
Anfänger2011 Java Server oder lieber was anderes Allgemeine Java-Themen 16
F Best Practice Server und Clients Allgemeine Java-Themen 10
E JavaFX RMI extrem langsam wenn Server nicht läuft Allgemeine Java-Themen 5
D Best Practice Java Application Server , Docker oder was? Allgemeine Java-Themen 15
L Suche nach CalDav Server API Allgemeine Java-Themen 0
C Hang Man Server Client Allgemeine Java-Themen 3
C Hang man mit Server/Client Allgemeine Java-Themen 2
K Classpath JDBC Driver auf Server Allgemeine Java-Themen 4
J Programm meldet "Keine Rückmeldung" nach Verbindung zum Server Allgemeine Java-Themen 4
I Installer, der JAVA EE Server und DB installiert Allgemeine Java-Themen 10
M Kapselung JasperReports Server und Java Allgemeine Java-Themen 5
P Java Fehler auf Win2008 Server java.io.FilePermission IE8 Version JRE 1.7.0_51 Allgemeine Java-Themen 7
M Dateien aus einem Verzeichnis auf einem Server auflisten Allgemeine Java-Themen 5
M Checksummenprüfung bei Client Server kommunikation Allgemeine Java-Themen 3
C Mit Pc Awendungen auf Server starten Allgemeine Java-Themen 8
B Input/Output Server Startet, Jedoch Kein Output. Allgemeine Java-Themen 1
T Daten über port abfangen mit proxy server Allgemeine Java-Themen 12
E Socket Client-Server-Programmierung Allgemeine Java-Themen 44
T Java Streaming-Server & Streaming-Client Allgemeine Java-Themen 4
R Fragen zu Server + UI Allgemeine Java-Themen 2
0 Lösungsweg Client Server Kommunikation Fehlermeldung ausgeben Allgemeine Java-Themen 12
D Client / Server Allgemeine Java-Themen 23
D Player Objekt - Frame über Server anzeigen lassen. Allgemeine Java-Themen 3
U AWT simulierter Tastendruck auf Virtual Server Allgemeine Java-Themen 7
Z Socket [Chatprogramm] Nachrichten vom Server anzeigen lassen Allgemeine Java-Themen 6
E Methoden Server Benutzer abfrage Allgemeine Java-Themen 2
N COM Server ansteuern / KISSsoft Allgemeine Java-Themen 3
N URLConnection - Server abgeschaltet Allgemeine Java-Themen 2
A Parser verursacht Speicherprobleme auf Server Allgemeine Java-Themen 2
T Mit Java auf Dateien zugreifen die auf einem Server liegen Allgemeine Java-Themen 5
J Problem beim Auslesen einer Datei vom Server Allgemeine Java-Themen 4
T jar Archiv auf Server ausführen Allgemeine Java-Themen 3
J Application Server Allgemeine Java-Themen 2
A Input/Output Applet-Zugriff auf PHP-Schnittstelle (externer Server) Allgemeine Java-Themen 22
C game-server GUI erstellen Allgemeine Java-Themen 13
Developer_X Java FTP - Ordner auf Server erstellen Allgemeine Java-Themen 7
C Java Server Pages Problem Allgemeine Java-Themen 6
T Gleichzeitige Zugriffe auf Daten auf dem Server Allgemeine Java-Themen 11
M Server-Responds testen, Code-Redundanz Allgemeine Java-Themen 3
T JPA Entity im Client-Server-Umfeld Allgemeine Java-Themen 19
C Primzahlen Server Allgemeine Java-Themen 3
K Server Daten Visualisieren Allgemeine Java-Themen 3
S FTP Gezippte Datei von FTP Server downloaden Allgemeine Java-Themen 24

Ähnliche Java Themen

Neue Themen


Oben