java - 为什么 appfuse 不发送电子邮件? (SMTP发送失败异常)

标签 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

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

我用谷歌搜索并找到了source code for MailEngine ,它看起来像是 org.springframework.mail.MailSender 的包装器。

我有点失望,我以为 appfuse 应该开箱即用。

最佳答案

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

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
   <property name="host" value="${mail.host}"/>
   <property name="defaultEncoding" value="UTF-8"/>
   <!-- Uncomment if you need to authenticate with your SMTP Server -->
   <!--property name="username" value="${mail.username}"/>
   <property name="password" value="${mail.password}"/>
   <property name="javaMailProperties">
       <value>
        mail.smtp.auth=true
       </value>
    </property-->

</bean>

希望有帮助。

关于java - 为什么 appfuse 不发送电子邮件? (SMTP发送失败异常),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23330729/

相关文章:

java - 获取目录中文件的最后修改日期

java - 如何获取每天随着天数递增的输出

java - spring roo vs appfuse 生成服务/dao 层

java - 检查用户是否登录到应用程序(Appfuse 项目)

Java:如何多次阅读 Reader?

email - 匿名 SMTP 服务

c# - MailKit smtp 将电子邮件复制到交换服务器发送的文件夹

PHPMailer 和 SMTP : Mail never shows up when sent from remote server, 在本地机器上工作正常

java - 是使用invokeAll还是提交-Java Executor服务