/** * Copy constructor for creating a new {@code SimpleMailMessage} from the state * of an existing {@code SimpleMailMessage} instance. */ public SimpleMailMessage(SimpleMailMessage original) { Assert.notNull(original, "'original' message argument must not be null"); this.from = original.getFrom(); this.replyTo = original.getReplyTo(); this.to = copyOrNull(original.getTo()); this.cc = copyOrNull(original.getCc()); this.bcc = copyOrNull(original.getBcc()); this.sentDate = original.getSentDate(); this.subject = original.getSubject(); this.text = original.getText(); }
/** * Copy constructor for creating a new {@code SimpleMailMessage} from the state * of an existing {@code SimpleMailMessage} instance. */ public SimpleMailMessage(SimpleMailMessage original) { Assert.notNull(original, "'original' message argument must not be null"); this.from = original.getFrom(); this.replyTo = original.getReplyTo(); this.to = copyOrNull(original.getTo()); this.cc = copyOrNull(original.getCc()); this.bcc = copyOrNull(original.getBcc()); this.sentDate = original.getSentDate(); this.subject = original.getSubject(); this.text = original.getText(); }
@Test public void testDeepCopyOfStringArrayTypedFieldsOnCopyCtor() throws Exception { SimpleMailMessage original = new SimpleMailMessage(); original.setTo(new String[]{"fiona@mail.org", "apple@mail.org"}); original.setCc(new String[]{"he@mail.org", "she@mail.org"}); original.setBcc(new String[]{"us@mail.org", "them@mail.org"}); SimpleMailMessage copy = new SimpleMailMessage(original); original.getTo()[0] = "mmm@mmm.org"; original.getCc()[0] = "mmm@mmm.org"; original.getBcc()[0] = "mmm@mmm.org"; assertEquals("fiona@mail.org", copy.getTo()[0]); assertEquals("he@mail.org", copy.getCc()[0]); assertEquals("us@mail.org", copy.getBcc()[0]); }
assertEquals("you@mail.org", messageCopy.getTo()[0]); assertEquals("you@mail.org", message.getTo()[0]); List<String> ccs = Arrays.asList(message.getCc()); assertTrue(ccs.contains("he@mail.org")); assertEquals("me@mail.org", messageCopy.getFrom()); assertEquals("reply@mail.org", messageCopy.getReplyTo()); assertEquals("you@mail.org", messageCopy.getTo()[0]); ccs = Arrays.asList(messageCopy.getCc()); assertTrue(ccs.contains("he@mail.org"));
@Test public void simpleMailMessage() { SimpleMailMessage mailMessage = MailTestsHelper.createSimpleMailMessage(); String[] toHeaders = mailMessage.getTo(); this.handler.handleMessage(MessageBuilder.withPayload(mailMessage).build()); assertEquals("only one simple message must be sent", 1, mailSender.getSentSimpleMailMessages().size()); SimpleMailMessage sentMessage = mailSender.getSentSimpleMailMessages().get(0); assertTrue(sentMessage.getTo().equals(toHeaders)); } @Test
@Test public void simpleMailMessageOverrideWithHeaders() { SimpleMailMessage mailMessage = MailTestsHelper.createSimpleMailMessage(); mailMessage.getTo(); this.handler.handleMessage(MessageBuilder.withPayload(mailMessage).setHeader(MailHeaders.TO, new String[]{"foo@bar.bam"}).build()); assertEquals("only one simple message must be sent", 1, mailSender.getSentSimpleMailMessages().size()); SimpleMailMessage sentMessage = mailSender.getSentSimpleMailMessages().get(0); assertTrue(sentMessage.getTo()[0].equals("foo@bar.bam")); }
private void applyHeadersToMailMessage(MailMessage mailMessage, MessageHeaders headers) { String subject = headers.get(MailHeaders.SUBJECT, String.class); if (subject != null) { mailMessage.setSubject(subject); } String[] to = this.retrieveHeaderValueAsStringArray(headers, MailHeaders.TO); if (to != null) { mailMessage.setTo(to); } if (mailMessage instanceof SimpleMailMessage) { Assert.state(!ObjectUtils.isEmpty(((SimpleMailMessage) mailMessage).getTo()), "No recipient has been provided on the MailMessage or the 'MailHeaders.TO' header."); } String[] cc = this.retrieveHeaderValueAsStringArray(headers, MailHeaders.CC); if (cc != null) { mailMessage.setCc(cc); } String[] bcc = this.retrieveHeaderValueAsStringArray(headers, MailHeaders.BCC); if (bcc != null) { mailMessage.setBcc(bcc); } String from = headers.get(MailHeaders.FROM, String.class); if (from != null) { mailMessage.setFrom(from); } String replyTo = headers.get(MailHeaders.REPLY_TO, String.class); if (replyTo != null) { mailMessage.setReplyTo(replyTo); } }
@Override public void send(SimpleMailMessage msg) throws MailException { log.info("MOCK: sending mail to " + msg.getTo() + ", subject: " + msg.getSubject()); log.info("MOCK: mail body: " + msg.getText()); }
@Override public void send(SimpleMailMessage msg) throws MailException { // Write the message to the console System.out.println("MockMailSender: mock email message start === "); String to = ""; for (String addr : msg.getTo()) { if (to.length() > 0) { to+=", "; } to += addr; } System.out.println("To: "+to); System.out.println("From: "+msg.getFrom()); System.out.println("Subject: "+msg.getSubject()); System.out.println("Contents: "+msg.getText()); System.out.println("MockMailSender: mock email message end === "); }
@Override public void send(SimpleMailMessage simpleMessage) throws MailException { log.info("Entering send Simple Mail Message "); String content = simpleMessage.getText(); String subject = simpleMessage.getSubject(); String[] recipients = simpleMessage.getTo(); StringBuffer toSb = new StringBuffer(); for (String recipient : recipients) { toSb.append(recipient.toString()); toSb.append(","); } if (toSb.length() > 1) { toSb.setLength(toSb.length() - 1); } postMailMessage(content, subject, toSb.toString()); }
@Override public void send(SimpleMailMessage msg) throws MailException { try { Message message = new MimeMessage(session); // message.setFrom(new InternetAddress("your_user_name@gmail.com")); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse( msg.getTo().toString() )); message.setSubject( msg.getSubject() ); message.setText( msg.getText() ); Transport.send(message); } catch (MessagingException e) { throw new RuntimeException(e); } }
for (String recipient : message.getTo()) { LOG.info("Sent email to " + recipient); for (String recipient : message.getTo()) { LOG.info("No email configuration to send email to " + recipient); LOG.debug("To=" + Arrays.toString(message.getTo()) + "\n\n" + "Subject=" + message.getSubject() + "\n\n" + "Text=" + message.getText()); for (String recipient : message.getTo()) { LOG.error("Sending email to " + recipient + " failed", ex);
properties.getAuthFlowsEmailsFromField() ) ); message.addRecipient(Message.RecipientType.TO, new InternetAddress( msg.getTo()[0] )); //Spring's getTo returns String[]
public void send(String subject, String content) { try { MimeMessage mimeMessage = mailSender.createMimeMessage(); MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true, "utf-8"); mimeMessage.setContent(content, "text/html;charset=utf-8"); messageHelper.setFrom(mailMessage.getFrom()); messageHelper.setSubject(subject); //主题 messageHelper.setTo(mailMessage.getTo()); //发送给 messageHelper.setCc(mailMessage.getFrom()); //抄送 mailSender.send(mimeMessage); //发送邮件 } catch (Exception e) { logger.error("the email send error! content: {}, exception: {}", content, e); } }
private void applyHeadersToMailMessage(MailMessage mailMessage, MessageHeaders headers) { String subject = headers.get(MailHeaders.SUBJECT, String.class); if (subject != null) { mailMessage.setSubject(subject); } String[] to = this.retrieveHeaderValueAsStringArray(headers, MailHeaders.TO); if (to != null) { mailMessage.setTo(to); } if (mailMessage instanceof SimpleMailMessage) { Assert.state(!ObjectUtils.isEmpty(((SimpleMailMessage) mailMessage).getTo()), "No recipient has been provided on the MailMessage or the 'MailHeaders.TO' header."); } String[] cc = this.retrieveHeaderValueAsStringArray(headers, MailHeaders.CC); if (cc != null) { mailMessage.setCc(cc); } String[] bcc = this.retrieveHeaderValueAsStringArray(headers, MailHeaders.BCC); if (bcc != null) { mailMessage.setBcc(bcc); } String from = headers.get(MailHeaders.FROM, String.class); if (from != null) { mailMessage.setFrom(from); } String replyTo = headers.get(MailHeaders.REPLY_TO, String.class); if (replyTo != null) { mailMessage.setReplyTo(replyTo); } }
private SendEmailRequest prepareMessage(SimpleMailMessage simpleMailMessage) { Destination destination = new Destination(); destination.withToAddresses(simpleMailMessage.getTo()); if (simpleMailMessage.getCc() != null) { destination.withCcAddresses(simpleMailMessage.getCc()); } if (simpleMailMessage.getBcc() != null) { destination.withBccAddresses(simpleMailMessage.getBcc()); } Content subject = new Content(simpleMailMessage.getSubject()); Body body = new Body(new Content(simpleMailMessage.getText())); SendEmailRequest emailRequest = new SendEmailRequest(simpleMailMessage.getFrom(), destination, new Message(subject, body)); if (StringUtils.hasText(simpleMailMessage.getReplyTo())) { emailRequest.withReplyToAddresses(simpleMailMessage.getReplyTo()); } return emailRequest; } }
private SendEmailRequest prepareMessage(SimpleMailMessage simpleMailMessage) { Destination destination = new Destination(); destination.withToAddresses(simpleMailMessage.getTo()); if (simpleMailMessage.getCc() != null) { destination.withCcAddresses(simpleMailMessage.getCc()); } if (simpleMailMessage.getBcc() != null) { destination.withBccAddresses(simpleMailMessage.getBcc()); } Content subject = new Content(simpleMailMessage.getSubject()); Body body = new Body(new Content(simpleMailMessage.getText())); SendEmailRequest emailRequest = new SendEmailRequest(simpleMailMessage.getFrom(), destination, new Message(subject, body)); if (StringUtils.hasText(simpleMailMessage.getReplyTo())) { emailRequest.withReplyToAddresses(simpleMailMessage.getReplyTo()); } return emailRequest; } }
mailSender.send(message); log.info("[MAIL MANAGER] Sending mail: USER_INVITE to: {} / {} / {}" , (Object) message.getTo(), app.getVo(), app.getGroup()); } catch (MailException ex) { log.error("[MAIL MANAGER] Sending mail: USER_INVITE failed because of exception: {}", ex);