【问题标题】:552 sorry, your envelope sender domain must exist (#5.7.1)552 抱歉,您的信封发件人域必须存在 (#5.7.1)
【发布时间】:2015-10-07 17:28:07
【问题描述】:

我无法使用 ovh smtp 服务器和 spring 集成发送邮件。

配置对我来说很好,我缺少什么?

<int-mail:outbound-channel-adapter
    id="myOutboundMailChannelAdapter"
    channel="outboundMailChannel"
    mail-sender="mailSender" />

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    <property name="host" value="ns0.ovh.net"/>
    <property name="port" value="587"/>
    <property name="username" value="myUsername"/>
    <property name="password" value="myPass"/>
    <property name="javaMailProperties">
        <props>
            <prop key="mail.transport.protocol">smtp</prop>
            <prop key="mail.smtp.auth">true</prop>
            <prop key="mail.smtp.starttls.enable">true</prop>
            <prop key="mail.debug">true</prop>
        </props>
    </property>
</bean>

按照详细日志:

调试:getProvider() 返回 javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
>调试 SMTP:useEhlo true,useAuth true
>调试 SMTP:试图连接到主机“ns0.ovh.net”,端口 587,isSSL false
>220 ns0.ovh.net 您连接到 mail191 ESMTP
>调试 SMTP:连接到主机“ns0.ovh.net” , 端口:587
> EHLO Marcello-PC.lan
> 250-ns0.ovh.net 你连接到 mail191
> 250-AUTH LOGIN PLAIN
> 250-AUTH=LOGIN PLAIN
> 250-STARTTLS
> 250-8BITMIME
> 250 SIZE 109000000
> 调试 SMTP:找到扩展名“AUTH”,arg“LOGIN PLAIN”
>调试 SMTP:找到扩展名“AUTH=LOGIN” ", arg "PLAIN"
> DEBUG SMTP: 找到扩展名 "STARTTLS", arg ""
> DEBUG SMTP: 找到扩展名 "8BITMIME", arg ""
> DEBUG SMTP: 找到扩展名 "SIZE" , arg "109000000"
> STARTTLS
> 220 准备 tls
> EHLO Marcello-PC.lan
> 250-ns0.ovh.net 你连接到 mail191
> 250-AUTH普通登录
> 250-AUTH=普通登录
> 250-8BITMIME
> 250 大小 10900 0000
>调试 SMTP:找到扩展名“AUTH”,arg“LOGIN PLAIN”
>调试 SMTP:找到扩展名“AUTH=LOGIN”,arg“PLAIN”
>调试 SMTP:找到扩展名“8BITMIME” , arg ""
> DEBUG SMTP: 找到扩展名 "SIZE", arg "109000000"
> DEBUG SMTP: 尝试使用机制进行身份验证:LOGIN PLAIN DIGEST-MD5 NTLM
> DEBUG SMTP: AUTH LOGIN 命令跟踪抑制
> DEBUG SMTP:AUTH LOGIN 成功
> DEBUG SMTP:use8bit false
> MAIL FROM:
> 552 抱歉,您的信封发件人域必须存在 [mail191] (#5.7.1)
> DEBUG SMTP:得到响应代码 552,响应:552 抱歉,您的信封发件人域必须存在 [mail191] (#5.7.1)
> RSET
> 250 已刷新
> DEBUG SMTP : 发送时出现 MessagingException,抛出:
> com.sun.mail.smtp.SMTPSendFailedException: 552 抱歉,您的信封发件人域必须存在 [mail191] (#5.7.1)

【问题讨论】:

    标签: java smtp jakarta-mail spring-integration


    【解决方案1】:

    您帖子的格式似乎隐藏了 MAIL FROM: 行中的电子邮件地址。您将哪个地址设置为邮件的发件人地址?根据错误消息,它似乎使用了一个不存在的域名。

    【讨论】:

      【解决方案2】:

      您发送到出站适配器的消息需要from 标头。您可以设置一堆标题...

      <int-mail header-enricher input-channel="literalValuesInput">
          <to value="test.to"/>
          <cc value="test.cc"/>
          <bcc value="test.bcc"/>
          <from value="test.from"/>
          <reply-to value="test.reply-to"/>
          <subject value="test.subject"/>
          <attachment-filename value="foo.txt"/>
          <multipart-mode value="1"/>
      </header-enricher>
      

      当然,电子邮件地址必须位于有效域中,大多数 SMTP 服务器才能接受它们。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多