Zum Inhalt springen

e-mail versenden


snopsy

Empfohlene Beiträge

Hallo zusammen!

ich bin gerade dabei ein Skript zu erstellen, wo einem das Paßwort per mail zugeschickt wird. Und zwar gibt es eine HTML-Seite mit einem Textfeld und einem Submit-Button. In das Textfeld muß die User-ID eingetragen werden. Der Submit-Button ruft ein Servlet auf, welches wiederrum eine Verbindung zur Datenbank herstellt. Die Datenbank Selectiert nach der User-ID, liest dann das passwort und die e-mail Adresse. Anschließend soll dann das gelesene Passwort an die gelesene e-Mail Adresse versendet werden.

Hier stellt sich mir die Frage, wie kann ich eine e-Mail mit Inhalt aus einem Servlet oder überhaupt aus einer Methode versenden???

Ist dringend, wäre super, wenn mir jemand weiterhelfen kann.

Gruß Snopsy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

das ist leider garnicht so trivial.

Es gibt 2 Möglichkeiten.

1. Du benutzt die JavaMail Api von Sun.

Die ist allerdings sehr oversized und erst einmal schwierig zu verstehen. Ein Beispiel könnte ich heute Abend posten.

2. Du benutzt eine von den unzähligen Mail Klassen im Netz.

Eine frei verfügbare ist z.B. im com.oreilly.servlet package. Zu finden unter http://www.servlets.com/cos/index.html .

Gruß Jaraz

PS Falls du das JavaMail Beispiel möchtest, sage bitte Bescheid.

Link zu diesem Kommentar
Auf anderen Seiten teilen

So hier nun ein Beispiel.

Die zweite Funktion ist zum Empfangen von Mails aus einem Pop3 Postfach. Da du nur senden wolltest, habe ich die mal nicht kommentiert.

Gruß Jaraz

--------------------------------------------------------

import java.io.*;

import java.util.*;

import javax.mail.*;

import javax.mail.internet.*;

class Mailer{

    public void sendMail(String message_subject, String message_body){

        String message_recip = "test@koelker.com";

        Session session;

        Message mesg;

        Properties props = new Properties();

        props.put("mail.smtp.host", "localhost");

        // Create the Session object

        session = Session.getDefaultInstance(props, null);

        session.setDebug(true);     // Verbose!

        

        try {

            // create a message

            mesg = new MimeMessage(session);

            // From Address - this should come from a Properties...

            mesg.setFrom(new InternetAddress("tomcat@koelker.com"));

            // TO Address 

            InternetAddress toAddress = new InternetAddress(message_recip);

            mesg.addRecipient(Message.RecipientType.TO, toAddress);

            // The Subject

            mesg.setSubject(message_subject);

            // Now the message body.

            mesg.setText(message_body);

            // XXX I18N: use setText(msgText.getText(), charset)

            

            // Finally, send the message!

            Transport.send(mesg);

        } catch (MessagingException ex) {

            while ((ex = (MessagingException)ex.getNextException()) != null) {

                ex.printStackTrace();

            }

        }

    }

    public void getMail(PrintWriter out){

        try {

            Session session = Session.getDefaultInstance(System.getProperties(), null);

            session.setDebug(false);

            Store store = session.getStore("pop3");

            store.connect("server", "user", "pass");

            Folder rf = store.getFolder("INBOX");

            

            rf.open(Folder.READ_WRITE);

            Message[] msgs = rf.getMessages();

            for(int i=0; i<msgs.length; i++){

                Message m = msgs;

                out.println("Subject: "+(m.getSubject()));

                out.println("Body: "+(m.getContent().toString()));

            }

            for(int i=0; i<msgs.length; i++){

                msgs.setFlag(Flags.Flag.DELETED,true);

            }

            rf.close(true);

            store.close();

        }

        catch (NoSuchProviderException ex) {

            ex.printStackTrace(out);    

        }

        catch (MessagingException ex) {

            ex.printStackTrace(out);

        }

        catch (IOException ex) {

            ex.printStackTrace(out);

        }

        

    }

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...