为什么appfuse不发送电子邮件? (SMTPSendFailedException)

时间:2014-04-28 00:28:11

标签: java smtp appfuse

我使用appfuse quickstart创建了一个基本的Spring MVC项目。

mvn archetype:generate -B -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-spring-archetype -DarchetypeVersion=3.0.0 -DgroupId=com.mycompany -DartifactId=myproject -DarchetypeRepository=http://oss.sonatype.org/content/repositories/appfuse 

我在https://mailtrap.io注册了(虚假的smtp服务)。我使用mailtrap凭据编辑了mail.properties文件:

mail.default.from=AppFuse <appfuse@raibledesigns.com>
mail.host=mailtrap.io
mail.username=199******d30ac
mail.password=ca8******aae39

我启动了应用并试图注册一个新用户,但我得到了:

ERROR [qtp8455718-31] MailEngine.send(78) | Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.1 Authentication required

我仔细检查了凭据,我确定它们是正确的。

我用Google搜索并找到source code for MailEngine,它看起来像org.springframework.mail.MailSender周围的包装。

我有点失望,我认为appfuse应该是开箱即用的。

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

确保您已在applicationContext-service.xml文件中正确编辑(请参阅粗体注释)以下部分:

  

&lt; bean id =“mailSender”   类= “org.springframework.mail.javamail.JavaMailSenderImpl” &GT;
       &lt; property name =“host”value =“$ {mail.host}”/&gt;
       &lt; property name =“defaultEncoding”value =“UTF-8”/&gt;
       &lt;! - 如果您需要使用SMTP服务器进行身份验证,请取消注释 - &gt;
       &lt;! - property name =“username”value =“$ {mail.username}”/&gt;
       &lt; property name =“password”value =“$ {mail.password}”/&gt;
       &lt; property name =“javaMailProperties”&gt;
       &LT;值GT;
       mail.smtp.auth =真
       &LT; /值GT;
       &lt; / property - &gt;

&lt; / bean&gt;

希望有所帮助。