抱歉,您的信封发件人域名必须存在(#5.7.1)

时间:2015-07-17 21:45:24

标签: java smtp javamail spring-integration

我无法使用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>

详细记录日期:

  

DEBUG:getProvider()返回javax.mail.Provider [TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
&gt; DEBUG SMTP:useEhlo true,useAuth true
&gt; DEBUG SMTP:尝试连接到主机“ns0.ovh.net”,端口587,isSSL false
&gt; 220 ns0.ovh.net您连接到mail191 ESMTP
&gt; DEBUG SMTP:连接到主机“ns0.ovh.net”,端口:587
&gt; EHLO Marcello-PC.lan
&gt; 250-ns0.ovh.net您连接到mail191
&gt; 250-AUTH LOGIN PLAIN
&gt; 250-AUTH =登录平面
&gt; 250-STARTTLS
&GT; 250-8BITMIME
&GT; 250 SIZE 109000000
&gt; DEBUG SMTP:找到扩展名“AUTH”,arg“LOGIN PLAIN”
&gt; DEBUG SMTP:找到扩展名“AUTH = LOGIN”,arg“PLAIN”
&gt; DEBUG SMTP:找到扩展名“STARTTLS”,arg“”
&gt; DEBUG SMTP:找到扩展名“8BITMIME”,arg“”
&gt; DEBUG SMTP:找到扩展名“SIZE”,arg“109000000”
&gt; STARTTLS
&GT; 220准备好了tls&gt; EHLO Marcello-PC.lan
&gt; 250-ns0.ovh.net您连接到mail191
&gt; 250-AUTH LOGIN PLAIN
&gt; 250-AUTH =登录平面
&gt; 250-8BITMIME
&GT; 250 SIZE 109000000
&gt; DEBUG SMTP:找到扩展名“AUTH”,arg“LOGIN PLAIN”
&gt; DEBUG SMTP:找到扩展名“AUTH = LOGIN”,arg“PLAIN”
&gt; DEBUG SMTP:找到扩展名“8BITMIME”,arg“”
&gt; DEBUG SMTP:找到扩展名“SIZE”,arg“109000000”
&gt; DEBUG SMTP:尝试使用机制进行身份验证:LOGIN PLAIN DIGEST-MD5 NTLM
&gt; DEBUG SMTP:AUTH LOGIN命令跟踪被抑制
&gt; DEBUG SMTP:AUTH LOGIN成功了&gt; DEBUG SMTP:use8bit false
&gt;邮件来自:&gt;抱歉,您的信封发件人域必须存在[mail191](#5.7.1)
&gt; DEBUG SMTP:得到回复代码552,回复:552抱歉,您的信封发件人域名必须存在[mail191](#5.7.1)
&gt; RSET
&GT; 250刷新
&gt; DEBUG SMTP:发送时MessagingException,THROW:
&gt; com.sun.mail.smtp.SMTPSendFailedException:552抱歉,您的信封发件人域必须存在[mail191](#5.7.1)

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

您要发送到出站适配器的邮件需要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服务器接受它们。