Sendgrid的JasperReport Server电子邮件

时间:2016-05-22 05:50:56

标签: email quartz-scheduler sendgrid jasperserver

尝试使用Sendgrid从JasperReport Server发送电子邮件时会抛出错误

2016-05-22 05:27:20,212 ERROR ReportExecutionJob,quartzScheduler_Worker-1:349 - The job error notification was not completed. An error occurred while sending it. org.springframework.mail.MailSendException: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 550 Unauthenticated senders not allowed ; message exception details (1) are: Failed message 1: com.sun.mail.smtp.SMTPSendFailedException: 550 Unauthenticated senders not allowed

at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:416)
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:340)
at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:336)
at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJobMailNotificationImpl.sendMailNotification(ReportExecutionJobMailNotificationImpl.java:139)
at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.sendMailNotification(ReportExecutionJob.java:1059)
at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.executeAndSendReport(ReportExecutionJob.java:570)
at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.execute(ReportExecutionJob.java:241)
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)

虽然用户名和密码有效,但是可以在JasperServer中使用Sendgrid发送邮件吗?尝试使用以下配置。

  

report.scheduler.mail.sender.host = smtp.sendgrid.net   report.scheduler.mail.sender.username = *****

     

report.scheduler.mail.sender.password = ******

     

report.scheduler.mail.sender.from=no-reply@stutzen.me   report.scheduler.mail.sender.protocol = SMTP

     

report.scheduler.mail.sender.port = 2525

1 个答案:

答案 0 :(得分:1)

需要

中的其他配置

/jasperserver/WEB-INF/applicationContext-report-scheduling.xml

       <property name="javaMailProperties">
            <props>
                <prop key="mail.smtp.sendpartial">true</prop>
                <prop key="mail.smtp.auth">true</prop>
            </props>
        </property>
对于Sendgrid,

mail.smtp.auth 需要 true