Java apachejames的问题

Java apachejames的问题,java,james,Java,James,我正在尝试使用Apache James作为服务器为外部帐户发送电子邮件,但收到以下异常: Caused by: com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Requested action not taken: relaying denied at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1686) ... 6 more 谁来帮我解决这个问题 提前谢

我正在尝试使用Apache James作为服务器为外部帐户发送电子邮件,但收到以下异常:

Caused by: com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Requested action not taken: relaying denied

at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1686)
... 6 more
谁来帮我解决这个问题

提前谢谢


Alisson

听起来好像您没有通过SMTP服务器的身份验证。如果您需要更多帮助,请显示一些代码。

您不能向外部邮件地址发送电子邮件,例如您的gmail id,除非您拥有静态IP。服务器的SMTP具有阻止来自动态IP的电子邮件的配置。

我正在使用apache commons电子邮件框架发送电子邮件。电子邮件=新的SimpleMail();email.setHostName(“NAME_SERVER.com.br”);setAuthenticator(新的DefaultAuthenticator(“红色”、“红色”));email.setFrom(“red@NAME_SERVER.com.br"); email.setSubject(“TestMail”);setMsg(“这是一封测试邮件…:-)”;email.addTo(“用户_EMAIL@gmail.com"); email.setDebug(true);email.send();谢谢@艾莉森,你能把这个代码添加到问题中并格式化吗?这样读起来会更容易。我正在使用ApacheCommons电子邮件框架发送电子邮件<代码>电子邮件=新建SimpleMail();email.setHostName(“NAME_SERVER.com.br”);setAuthenticator(新的DefaultAuthenticator(“红色”、“红色”));email.setFrom(“red@NAME_SERVER.com.br"); email.setSubject(“TestMail”);setMsg(“这是一封测试邮件…:-)”;email.addTo(“用户_EMAIL@gmail.com"); email.setDebug(true);email.send()谢谢!现在,我发送电子邮件,在日志中,它告诉我们已经发送了,但它没有到达gmail。IP被认为是动态的,因为某个地方的注册?我在哪里可以看到什么是动态的?