0

我对tomcat或spring有一个奇怪的问题。我对我的网站进行了重大修订,并且不再发送电子邮件。我使用 authsmtp,它需要身份验证(因此他们可以正确说明我对他们服务的使用)。没问题,我在春天有这个配置:

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    <property name="host" value="mail.authsmtp.com"/>
    <property name="username" value="my_authsmtp_username"/>
    <property name="password" value="my_authsmtp_password"/>
</bean>

工作正常。但是,现在我收到此错误:

失败的消息:com.sun.mail.smtp.SMTPSendFailedException: 513 5.0.0 您的电子邮件系统必须在发送邮件之前进行身份验证。

我的 log4j 电子邮件仍然可以正常工作。到 mail.authsmtp.com 的端口 25 的测试 telnet 也适用于示例 SMTP 对话。我对上面的 mailSender 配置与该站点的先前版本进行了比较,并且没有区别(我在想也许我的密码中有一个字符)。可能是什么问题呢?

我唯一能想到的是,我最初在没有上述用户名/密码元素的情况下启动了服务器(这是我们部署机制中的一个错误)。所以最初实际上这完全有道理。从那时起,我已经更正它并添加了用户名/密码元素,但问题仍然存在。我在想也许旧配置缓存在某个地方?tomcat会在任何地方缓存这个吗?我已经删除了 work 和 temp 目录,但无济于事。虽然我实际上已经将主机更改为 abcd1234authsmtp.com 并且它适当地失败并出现此错误:

邮件服务器连接失败;嵌套异常是 javax.mail.MessagingException: Unknown SMTP host: mail.abcd1234authsmtp.com; 嵌套异常是:java.net.UnknownHostException: mail.abcd1234authsmtp.com

所以我知道我正在使用正确的配置,并且 tomcat/spring 看到最新版本,出于某种原因,Spring 不再进行身份验证......我也使用与以前相同的 Spring (v3.0.2) 版本。有任何想法吗?

4

1 回答 1

1

尝试添加

<property name="javaMailProperties">
  <props>
    <prop key="mail.smtp.auth">true</prop>
    <prop key="mail.smtp.starttls.enable">false</prop>
  </props>
</property>

`

于 2011-05-23T19:18:38.120 回答