如何使用spring集成在电子邮件正文中附加文件
我有一种情况,我需要在邮件正文中附加文件,而不是在标题中。例如,在Microsoft outlook中,如果邮件类型设置为富格文本,则可以将文件作为附件拖放到电子邮件正文中。如何使用Spring Integration MessageBuilder实现这一点??到目前为止,这是我用来发送附件,但文件附加到电子邮件的标题,而不是在正文如何使用spring集成在电子邮件正文中附加文件,spring,email,integration,jakarta-mail,Spring,Email,Integration,Jakarta Mail,我有一种情况,我需要在邮件正文中附加文件,而不是在标题中。例如,在Microsoft outlook中,如果邮件类型设置为富格文本,则可以将文件作为附件拖放到电子邮件正文中。如何使用Spring Integration MessageBuilder实现这一点??到目前为止,这是我用来发送附件,但文件附加到电子邮件的标题,而不是在正文 Message<?> msg = MessageBuilder.withPayload("") .setHeader(MailHeaders.SUBJE
Message<?> msg = MessageBuilder.withPayload("")
.setHeader(MailHeaders.SUBJECT, subject )
.setHeader(MailHeaders.ATTACHMENT_FILENAME, args[0].toString())
.build();
Message msg=MessageBuilder.withPayload(“”)
.setHeader(MailHeaders.SUBJECT,SUBJECT)
.setHeader(MailHeaders.ATTACHMENT_文件名,args[0].toString())
.build();
如果有人给我代码的例子将是很大的帮助!提前感谢您的代码显示您忽略了消息本身的一个关键部分,
负载
JavaMailSender
连接出站消息适配器(您可能已经这样做了)org.springframework.mail.javamail.javamailssender
和org.springframework.mail.javamail.MimeMessageHelper
构建一个常规的MimeMessage
,如中所示
public void sendEmail(){
MimeMessage message = mailSender.createMimeMessage(); //mailSender is an instance of JavaMailSender from 1.
try{
MimeMessageHelper helper = new MimeMessageHelper(message,true);
//set the fields
helper.setFrom("J'onn Doe");
helper.setTo("SpamRecce");
helper.setSubject("")
helper.setText("Text goes here")
//load attachment file using spring's help. Basic interface is called a Resource and there are many implementations. Here, I've used the ClassPathResource which means your attachment file must be in your classpath
ClassPathResource theAttachment = new ClassPathResource("My File.Doc");
helper.addAttachment("Add the desired filename here.doc",theAttachment);
}
catch(MessagingException me){
Logger.getAnonymousLogger.info("Something bad happened!);
me.printStacktrace();
}
mailSender.send(message);
}
Message<MimeMessage> msg = MessageBuilder.withPayload(message)
.setHeader(MailHeaders.SUBJECT, subject )
.setHeader(MailHeaders.ATTACHMENT_FILENAME, args[0].toString())
.build();
Message msg=MessageBuilder.withPayload(消息)
.setHeader(MailHeaders.SUBJECT,SUBJECT)
.setHeader(MailHeaders.ATTACHMENT_文件名,args[0].toString())
.build();