Avatar billede martinm Nybegynder
19. november 2002 - 03:13 Der er 3 kommentarer og
1 løsning

Mail/Servlet

Er der nogen som ved, om der er en metode, hvormed man på et responseobjekt i en Java Servlet kan sende en beskemt besked til en specifik e-mail-adr??
Avatar billede disky Nybegynder
19. november 2002 - 07:18 #1
Yep du bruger denne klasse, metode navnene skulle være selv forklarende, ligeledes med deres parametre:

I koden skal du lige sætte mail serverens navn, så opretter du et objekt af denne klasse, og kalder de set metoder med korrekte parametere, og kalder sendMail(), og vupti så ryger der en mail afsted.

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;

public class SendMail
{
    String recipient="";
    String sender= "";
        String body="";
        String subject="";
       
    public void setRecipient( String recipient )
    {
            this.recipient = recipient;
    }
   
    public void setSender( String sender)
    {
            this.sender = sender;
    }
   
        public void setBody(String body)
        {
            this.body=body;
        }
       
        public void setSubject(String subject)
        {
            this.subject=subject;
        }

        public boolean sendMail()
    {
        boolean sendMail = true;
        try
        {
            Properties props = new Properties();
            props.put("mail.smtp.host", "MAIL SERVERS NAVN");
           
            Session mailsession = Session.getDefaultInstance(props, null);
           
            Message msg = new MimeMessage(mailsession);
            msg.setFrom(new InternetAddress(sender));
            msg.addRecipient(Message.RecipientType.TO, new InternetAddress(recipient));
            msg.setSubject(subject);
            msg.setText(body);
           
            Transport.send(msg);
/*
                        System.out.println("modtager = "+recipient);
                        System.out.println("afsender = "+sender);
                        System.out.println("subject  = "+subject);
                        System.out.println("tekst    = "+body);
*/                       
                        return true;
        }
        catch( AddressException e )
        {
            return false;
        }
        catch( MessagingException e )
        {
            return false;
        }
    }
}
Avatar billede soelvpil Nybegynder
19. november 2002 - 08:28 #2
Afhængigt af, hvilken server du bruger, vil du muligvis få behov for at hente javax.mail-klasserne, hvis disse ikke allerede findes på serveren. De kan hentes her:

http://java.sun.com/products/javamail/javamail-1_2.html
Avatar billede disky Nybegynder
19. november 2002 - 08:29 #3
Men hvis du har J2EE installeret, er javax.mail.* en del af denne.
Avatar billede Slettet bruger
19. november 2002 - 18:50 #4
disky >> Hvad gør man hvis en server kræver user/pass for at maile ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester