首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用javamail时使用google作为smtp服务器时的STARTTLS问题

使用javamail时使用google作为smtp服务器时的STARTTLS问题
EN

Stack Overflow用户
提问于 2015-07-13 05:39:48
回答 2查看 609关注 0票数 0

我使用基于Java的CMS,我想使用谷歌作为dotCMS服务器。我使用了dotCMS文档中描述的配置:http://dotcms.com/docs/latest/mail-configuration

我的配置如下所示:

代码语言:javascript
复制
    <Resource
            name="mail/MailSession"
            auth="Container"
            type="javax.mail.Session"
            mail.debug="true"
            mail.transport.protocol="smtp"
            mail.smtp.host="smtp.gmail.com"
            mail.smtp.auth="true"
            mail.smtp.port="465"
            mail.smtp.starttls.enable="true"
            mail.smtp.user="[my username]"
            mail.password="[my pwd]"
            username="[my username]"
            password="[my pwd]"
            mail.smtp.socketFactory.class="javax.net.ssl.SSLSocketFactory"
     />

当我调用$mailer.sendEmail方法时,我得到了一个错误:

“无法发送消息: 530 5.7.0必须先发出STARTTLS命令。c7sm25357283wjb.19 - gsmtp”。

我还尝试了587端口,但也没有帮助。

你知道我做错了什么吗?我使用的是dotcms 2.5.6。在debian 7.8上运行(wheezy)

EN

回答 2

Stack Overflow用户

发布于 2015-07-13 10:16:19

您不应该需要socketFactory setting

您也不应该需要端口设置。

尝试设置mail.smtp.ssl.enable=true。如果这不起作用,请尝试设置mail.transport.protocol=smtps并将所有mail.smtp.*设置更改为mail.smtps.*。

Gmail entry in the JavaMail FAQ可能会很有用。

如果这些都不起作用,请发布JavaMail调试输出。

票数 2
EN

Stack Overflow用户

发布于 2015-07-23 23:10:26

你在谷歌中设置了双因素身份验证吗?我认为这可能会阻止身份验证的发生。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31372868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档