使用现有的 MimeMessage 对象创建 MimeMessagePreparator

Posted

技术标签:

【中文标题】使用现有的 MimeMessage 对象创建 MimeMessagePreparator【英文标题】:Creating MimeMessagePreparator using existing MimeMessage Object 【发布时间】:2020-10-11 06:14:29 【问题描述】:

我有一个已设置字段的 MimeMessage 对象。

如何? 我尝试将现有的 mime 消息对象传递给 MimeMessageHelper 构造函数,但它不起作用。 下面是代码sn-p:

MimeMessage msg=new MimeMessage();
msg.setFrom("abc@crop.com");
msg.setTo("xyzc@crop.com");
msg.setSubject("Test mail");
msg.setText("Test Mail java sender",false);


MimeMessagePreparator messagePreparator = new MimeMessagePreparator ()
        public void prepare(MimeMessage mimeMessage) throws Exception
         MimeMessageHelper helper = new MimeMessageHelper(msg);//creating helper with existing mime message object
        
    ;
    

mailSender.send(messagePreparator);

【问题讨论】:

【参考方案1】:

我知道这已经晚了,但有人可能会觉得它很有用:

MimeMessagePreparator messagePreparator = mimeMessage -> 
            MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage);
            messageHelper.setTo("toemail");
            messageHelper.setFrom("fromEmail");
            messageHelper.setSubject(subject);
            messageHelper.setText(body, false);

        ;

        sendMail(messagePreparator);

PS:如果您使用任何模板,我假设body 是模板化的消息体。如果您使用html 模板,请将其设置为true

【讨论】:

以上是关于使用现有的 MimeMessage 对象创建 MimeMessagePreparator的主要内容,如果未能解决你的问题,请参考以下文章