簡體   English   中英

連接到Outlook.com SMTP服務器時出現Spring Mail錯誤

[英]Spring mail error while connecting to outlook.com smtp server

我正在嘗試通過我的Outlook.com帳戶發送電子郵件(已映射到特定域,我的電子郵件ID類似於emailId@mydomain.com

我收到以下異常。

2014-03-14 00:27:55,314 [pool-1-thread-1]錯誤org.springframework.scheduling.support.MethodInvokingRunnable-在目標類[com.sixthsense.lws.scheduler.TestMailSenderJob上調用方法'sendMail' ] org.springframework.mail.MailSendException失敗:失敗的消息:com.sun.mail.smtp.SMTPSendFailedException:501 5.5.4無效的電子郵件地址; 嵌套的異常是:com.sun.mail.smtp.SMTPSenderFailedException:501 5.5.4無效的電子郵件地址; 消息異常的詳細信息(1)是:失敗的消息1:com.sun.mail.smtp.SMTPSendFailedException:501 5.5.4無效的電子郵件地址; 嵌套的異常是:com.sun.mail.smtp.SMTPSenderFailedException:501 5.5.4無效的電子郵件地址

在com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:2108)在com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1609)在com.sun.mail.smtp.SMTPTransport.sendMessage (SMTPTransport.java:1117),位於org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:416),位於org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:306)。 com.sixthsense.lws.scheduler.TestMailSenderJob.sendMail(TestMailSenderJob.java:34)處的mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:296)位於sun.reflect處的sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)。 org.springframework.util.MethodInvoker上的java.lang.reflect.Method.invoke(Method.java:601)上的sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)上的NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) .invoke(MethodInvoker.java:273)在org.springframework.scheduling.support.MethodInvokingRunnable.r org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:51)處的java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:471)處的Un(MethodInvokingRunnable.java:65) .concurrent.FutureTask $ Sync.innerRunAndReset(FutureTask.java:351)at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 301(ScheduledThreadPoolExecutor.java: 178)在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)在java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:603)在java.lang.Thread.run(Thread.java:722)原因:com.sun.mail.smtp.SMTPSenderFailedException:501 5.5.4無效的電子郵件地址

在com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1616)...還有20

我的彈簧配置如下

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host" value="smtp-mail.outlook.com" />
        <property name="port" value="587" />
         <property name="username" value="userid@mydomian.com" />
        <property name="password" value="password" />
        <property name="javaMailProperties">
            <props>
                <prop key="mail.smtp.auth">true</prop>
                <prop key="mail.smtp.starttls.enable">true</prop>
            </props>
        </property>
    </bean>

以下代碼發送電子郵件

@Service
public class TestMailSenderJob {

    @Autowired
    JavaMailSender mailSender;

    public JavaMailSender getMailSender() {
        return mailSender;
    }

    public void setMailSender(JavaMailSender mailSender) {
        this.mailSender = mailSender;
    }

    @Scheduled(fixedDelay=5000)
    public void sendMail()
    {
        System.out.println("############invoked sendMail");
        SimpleMailMessage message = new SimpleMailMessage();

        message.setTo("to@mailId.com");
        message.setSubject("Test mail "+new Date().toString());
        message.setText("test body");
        getMailSender().send(message);
        System.out.println("######### email send");
    }

}

我正在將oracle提供的jar用於電子郵件版本javamail-1.4.7。 編輯:我能夠通過Outlook Web界面在我的Outlook帳戶(用於程序中的smtp)中發送接收電子郵件。

已修復atlast,從消息中添加

 message.setFrom("from@mailId.com");

我在堆棧跟蹤中的許多地方都讀到:“無效的電子郵件地址”。 請在您的代碼中檢查它。

另一件事,為了安全起見,請使用Maven存儲庫中的javax.mail-1.4.7。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM