Грешка 530 „Достъпът е отказан: Безплатните потребители нямат достъп до този сървър.“ в Java Mail?
Грешка 530 „Достъпът е отказан“: Безплатните потребители нямат достъп до този сървър. В Java Mail ли? … Написах програма на Java, използвайки Java Mail API, и сега, когато изпращам имейл, получавам следната грешка
Изключение в нишката "main" javax.mail.Authentication: 530 Достъпът е отказан: Безплатните потребители нямат достъп до този сървър.
в com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:648)
в com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:583)
в javax.mail.Service.connect(Service.java:313)
в javax.mail.Service.connect(Service.java:172)
в javax.mail.Service.connect(Service.java:121)
в javax.mail.Transport.send0(Transport.java:190)
в javax.mail.Transport.send(Transport.java:120)
в SendApp_one.send(SendApp_one.java:36)
в SendApp_one.main(SendApp_one.java:56)
Ето моят изходен код:
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SendApp_one
{
private static final String SMTP_AUTH_USER = MyYahooUsename;
private static final String SMTP_AUTH_PWD = Myyahoopassword;
public void send(String smtpHost, String from, String to, String subject, String content)
изхвърля изключенията AddressException и MessagingException
{
// Създаване на пощенска сесия
java.util.Properties props = new java.util.Properties();
props.put("mail.smtp.host", smtpHost);
props.put("mail.debug", "false");
props.put("mail.smtp.auth", "true");
Authenticator auth= new SMTPAuthenticator();
Session session = Session.getInstance(props, auth);
session.setDebug(true);
// Създаване на съобщението
Съобщение msg = ново MimeMessage(session);
msg.setFrom(new InternetAddress(from));
msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
msg.setSubject(subject);
msg.setText(съдържание);
// Изпращане на съобщението
Transport.send(msg);
System.out.println("Имейлът беше изпратен!…");
}
частен клас SMTPAuthenticator, който разширява javax.mail.Authenticator
{
public PasswordAuthentication getPasswordAuthentication()
{
String username = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
връщане на нов PasswordAuthentication(username, password);
}
}
public static void main(String[] args) throws Exception {
// Изпращане на тестово съобщение
SendApp_one obj=new SendApp_one();
String subject=new String(""+args[0]);
String text=new String(""+args[1]);
obj.send("smtp.mail.yahoo.com", "Yahooid", "YahooId", subject, text);
}
}
Моля, дайте ми решение, моля …………………….
Благодаря…..
Yahoo не предлага SMTP и POP услуги за електронна поща на потребителите с безплатни акаунти. Трябва да закупите услугата Yahoo Mail PLUS.
http://answers.yahoo.com/question/index?qid=20060918091416AAIyC6m
http://overview.mail.yahoo.com/enhancements/mailplus
—
Кейси С., компютърен гуру още от времето на Apple II
Винаги помни, че си уникален, точно като всички останали.
[…]