【问题标题】:Grails Mail port configurationGrails 邮件端口配置
【发布时间】:2011-02-25 20:47:03
【问题描述】:

我正在尝试通过 grails 邮件插件发送邮件。我根据文档进行配置,也关注了几篇博文(http://blog.lourish.com/2010/04/02/sending-asynchronous-html-email-in-grails-with-activemq-jms-and-gmail/)。那篇文章提到声明配置的关闭方式会覆盖其他方式,但不是真的。无论如何我都尝试了这两种方法,但似乎端口仍然使用 smtp 默认端口。我得到以下异常。

exception: org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25; nested exception is: java.net.ConnectException: Connection refused: connect

现在,我直接使用java邮件库写了一个小程序,我可以用它发送邮件。配置如下图所示。尝试了额外的配置“mail.smtp.port”:“465”,但没有改变..使用上面博客文章中提到的参数,结果相同

    grails {
   mail {
     host = "smtp.gmail.com"
     port = "465"  
     username = "mylogin@gmail.com"
     password = "mypwd"
     props = ["mail.smtp.auth":"true",
            // "mail.smtp.port":"465",
              "mail.smtp.socketFactory.port":"465",
              "mail.smtp.socketFactory.class":"javax.net.ssl.SSLSocketFactory",
              "mail.smtp.socketFactory.fallback":"false"]
   }
}

提前谢谢..

更新:它不是端口或防火墙配置,就像我从头开始制作一个 grails 应用程序并尝试使用相同的配置一样,一切正常。另外,在 grails 论坛http://grails.1312388.n4.nabble.com/grails-mail-mailSender-does-not-have-config-values-td2237704.html#a2237704 中询问。希望能有机会尝试一下。

【问题讨论】:

  • 前几天我在一个项目中遇到了类似的问题。最后我们发现这是一个防火墙问题,应用程序实际上是在尝试在备用端口上发送。对我们来说,例外是给出关于 25 端口的误导性消息。我不记得确切的细节,因为已经很晚了,我只想回家! :-) 祝你好运
  • 哇!!这很困难.. 但是,我关闭了防火墙,正如我所说,具有相同上述配置的普通 java 邮件程序可以正常工作:-(

标签: grails email


【解决方案1】:

我在这个设置的帮助下让它工作了

grails {
    mail {
        host = "smtp.gmail.com"
        port = 587
        username = "xyz@gmail.com"
        password = "mypassword"
        props = ["mail.debug": "true",
                "mail.smtp.protocol": "smtps",
                "mail.smtp.auth": "true",
                "mail.smtp.starttls.enable": "true",
                "mail.smtp.host": "smtp.gmail.com",
                "mail.smtp.user": "xyz@gmail.com",
                "mail.smtp.password": "mypassword"]
    }
}

【讨论】:

    【解决方案2】:

    我想我解决了这个问题。我之前安装了 Nimble 插件,该插件还有一个邮件配置注入到我的应用程序中(NimbleConfig.groovy)。在我在 conf.groovy 中设置邮件参数后,它就起作用了。我没有看到 mailSender 是使用灵活的配置值初始化的,并且只从我的 conf.groovy 初始化过一次。所以,我不确定原因,但它起作用了。

    【讨论】:

      【解决方案3】:

      也许您应该尝试为端口属性分配一个整数值: 端口 = 465 这对我来说可以! 祝你好运!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-02
        • 1970-01-01
        • 2014-09-22
        • 1970-01-01
        相关资源
        最近更新 更多