Hvis du bruger JavaMail-API’en fra Sun, kan du hente den nyeste version fra Sun Downloads.
JavaMail bruger egenskaber til at indlæse alle konfigurationsindstillinger i programmet.
Du skal angive:
# Værtsnavnet eller IP-adressen på din SMTP-server
mail.smtp.host=smtp.duke.java.sun.com
# Du får masser af fejlfindingsoplysninger, hvis
# – denne funktion er aktiveret. Sæt en kommentar på denne linje for at deaktivere
# det af.
mail.debug=true
# E-mail-adressen
ttapr2004.to=duke@duke.java.sun.com
# Afsenderens e-mail-adresse
ttapr2004.from=duke@j2ee_fanclub.java.su…
Du kan nemt oprette forbindelse til SMTP-serveren uden at skulle logge ind. Men det kan ske, at du ikke kan sende e-mails fra dit Java-program:
1. Din IP-adresse kan være blokeret af en firewall, så Adgang til SMTP-server
2. Din SMTP-server blokerer afsenderadresser, modtageradresser og muligvis din IP-adresse.
3. Din SMTP-server kræver godkendelse
Hvis din server kræver godkendelse, har jeg fundet denne information på internettet
————————————–…
public class SendMailUsingAuthentication {
private static final String SMTP_HOST_NAME = "myserver.smtphost.com";
private static final String SMTP_AUTH_USER = "myusername";
private static final String SMTP_AUTH_PWD = "mypwd";
private static final String emailMsgTxt =
"Bekræftelse af onlinebestilling. Angiv også sporingsnummeret.";
private static final String emailSubjectTxt = "Emne for ordrebekræftelse";
private static final String emailFromAddress = "sudhir@javacommerce.com";
// Tilføj en liste over e-mailadresser, som e-mailen skal sendes til
private static final String[] emailList = {
"mark@yahoo.com", "robin@javacommerce.com"};
public static void main(String args[]) throws Exception {
SendMailUsingAuthentication smtpMailSender = new
SendMailUsingAuthentication();
smtpMailSender.postMail(emailList, emailSubjectTxt, emailMsgTxt,
emailFromAddress);
System.out.println("E-mailen er sendt til alle brugere");
}
public void postMail(String recipients[], String subject,
String message, String from) throws MessagingException {
boolean debug = false;
//Indstil SMTP-adressen for værten
Properties props = new Properties();
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");
Authenticator auth = new SMTPAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
session.setDebug(debug);
// opret en besked
Message msg = new MimeMessage(session);
// indstil afsender- og modtageradressen
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);
InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++) {
addressTo[i] = new InternetAddress(recipients[i]);
}
msg.setRecipients(Message.RecipientType…. addressTo);
// Indstilling af emne og indholdstype
msg.setSubject(subject);
msg.setContent(message, "text/plain");
Transport.send(msg);
}
/**
* SimpleAuthenticator bruges til at udføre enkel autentificering
* når SMTP-serveren kræver det.
*/
privat klasse SMTPAuthenticator
udvider javax.mail.Authenticator {
public PasswordAuthentication getPasswordAuthentication() {
String brugernavn = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
return new PasswordAuthentication(brugernavn, adgangskode);
}
}
}
————————————–…
Ansvarsfraskrivelse - synspunkterne i denne artikel leveres af en tredjepart og stemmer muligvis ikke overens med dem på vores websted
