Spring - 每次发送电子邮件时都阻止JavaMailSender进行身份验证

时间:2017-05-11 01:14:22

标签: java spring email spring-mvc

我正在使用JavaMailSender和Spring发送电子邮件。

我实例化JavaMailSender将其作为邮件bean的属性加载,并将邮件程序bean自动装入我的控制器。

我使用以下属性加载它:

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    <property name="host" value="smtp.gmail.com" />
    <property name="port" value="587" />
    <property name="username" value="email@email.com" />
    <property name="password" value="password" />
    <property name="javaMailProperties">
        <props>
            <prop key="mail.debug">true</prop>
            <prop key="mail.smtp.auth">true</prop>
            <prop key="mail.smtp.starttls.enable">true</prop>
            <prop key="mail.mime.charset">UTF-8</prop>
            <prop key="mail.transport.protocol">smtp</prop>
        </props>
    </property>
</bean>


 <bean id="mailer" class="mz.co.crunchtech.vtchill.utils.Mailer">
        <property name="mailSender" ref="mailSender" />
        <property name="velocityEngine" ref="velocityEngine"/>
    </bean>

我在我的工作线程上传递邮件程序对象,所以每隔一段时间我就会收到以下错误:

  

线程“taskExecutor-50”中的异常   org.springframework.mail.MailAuthenticationException:身份验证   失败;嵌套异常是javax.mail.AuthenticationFailedException:   454 4.7.0登录尝试次数过多,请稍后再试。   n8sm185296pgd.31 - gsmtp

我去了我的日志,发现了各种LOGIN成功的条目:

[root @ thikiti~] #cat /usr/share/apache-tomcat-7.0.73/logs/catalina.out | grep -i'登录succ'| wc -l 182

有没有办法避免每次发送电子邮件时重新进行身份验证?

0 个答案:

没有答案