Ако използвате JavaMail api, предоставено от Sun, можете да получите най-новото api от Sun Downloads.
JavaMail използва свойства, за да зареди цялата конфигурация на програмата.
Трябва да посочите:
# Името на хоста или IP адресът на вашия SMTP сървър
mail.smtp.host=smtp.duke.java.sun.com
# Получавате много информация за отстраняване на грешки, ако
# това е включено. Коментирайте този ред, за да включите
# го изключва.
mail.debug=true
# Имейл адресът за получаване
ttapr2004.to=duke@duke.java.sun.com
# Имейл адресът От
ttapr2004.from=duke@j2ee_fanclub.java.su…
Можете лесно да се свържете с SMTP сървъра, без да го удостоверявате. Но може да се окаже, че не можете да изпращате имейли от вашата java програма:
1. Вашият IP може да е блокиран от защитна стена. Достъп до SMTP сървър
2. Вашият SMTP сървър блокира адреса на изпращача, адреса на получателя и може би вашия IP адрес.
3. Вашият SMTP сървър изисква удостоверяване
Ако сървърът ви изисква удостоверяване, това е възможно от интернет.
————————————–…
публичен клас 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 =
"Съобщение за потвърждение на онлайн поръчка. Включете и номера за проследяване.";
private static final String emailSubjectTxt = "Order Confirmation Subject";
private static final String emailFromAddress = "sudhir@javacommerce.com";
// Добавяне на списък с имейл адреси, на които трябва да се изпрати имейл
private static final String[] emailList = {
"mark@yahoo.com", "robin@javacommerce.com"};
public static void main(String args[]) хвърля изключения {
SendMailUsingAuthentication smtpMailSender = new
SendMailUsingAuthentication();
smtpMailSender.postMail(emailList, emailSubjectTxt, emailMsgTxt,
emailFromAddress);
System.out.println("Успешно изпратена поща до всички потребители");
}
public void postMail(String recipients[], String subject,
String message, String from) хвърля MessagingException {
boolean debug = false;
/Задаване на адреса на хоста smtp
Properties props = new Properties();
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");
Authenticator auth = нов SMTPAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
session.setDebug(debug);
// създаване на съобщение
Съобщение msg = ново MimeMessage(session);
// задаване на адреса от и до
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);
// Задаване на тема и тип съдържание
msg.setSubject(subject);
msg.setContent(message, "text/plain");
Transport.send(msg);
}
/**
* SimpleAuthenticator се използва за извършване на просто удостоверяване
*, когато SMTP сървърът го изисква.
*/
частен клас SMTPAuthenticator
разширява javax.mail.Authenticator {
публична парола за удостоверяване getPasswordAuthentication() {
String username = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
връщане на нов PasswordAuthentication(username, password);
}
}
}
————————————–…
Отказ от отговорност - мненията, изразени в тази статия, са предоставени от трета страна и може да не съвпадат с тези на нашия уебсайт
