Grails邮件端口配置

时间:2010-05-31 06:02:53

标签: grails email

我正在尝试通过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中询问。希望有机会尝试。

3 个答案:

答案 0 :(得分: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"]
    }
}

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

相关问题