List of usage examples for org.springframework.mail.javamail MimeMessageHelper MimeMessageHelper
public MimeMessageHelper(MimeMessage mimeMessage, int multipartMode) throws MessagingException
From source file:com.rest.EmailSender.java
private void sendMessage(String emailHeader, String emailText) throws MessagingException { MimeMessage message = mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setFrom(sender);/*from w w w .j av a 2 s .co m*/ helper.setTo(recipient); helper.setSubject(emailHeader); helper.setText(emailText, true /* isHtml */); mailSender.send(message); }
From source file:de.hska.ld.core.service.impl.MailServiceImpl.java
@Override public void sendMail(String fullName, String email, String templateFileName, Map<String, Object> model) { ;// w w w .j av a 2s. c om if (Boolean.parseBoolean(env.getProperty("email.enabled"))) { Locale locale = LocaleContextHolder.getLocale(); ResourceBundle bundle = ResourceBundle.getBundle("messages", locale); model.put("dear", bundle.getString("email.dear")); model.put("fullName", fullName); model.put("greeting", bundle.getString("email.greeting")); String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, "templates/mail/" + templateFileName, "UTF-8", model); Properties properties = getMailProperties(); Session session = Session.getInstance(properties, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(MAIL_PROPERTIES.getProperty("email.username"), MAIL_PROPERTIES.getProperty("email.password")); } }); try { MimeMessage message = new MimeMessage(session); MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setFrom(MAIL_PROPERTIES.getProperty("email.from.system")); helper.setTo(email); helper.setSubject(model.containsKey("subject") ? (String) model.get("subject") : ""); helper.setText(text, true); Transport.send(message); } catch (MessagingException e) { e.printStackTrace(); } } }
From source file:com.glaf.mail.MailSenderImpl.java
public void send(JavaMailSender javaMailSender, MailMessage mailMessage) throws Exception { if (StringUtils.isEmpty(mailMessage.getMessageId())) { mailMessage.setMessageId(UUID32.getUUID()); }/*from w w w . j a v a2 s .c om*/ mailHelper = new MxMailHelper(); MimeMessage mimeMessage = javaMailSender.createMimeMessage(); MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true); if (StringUtils.isNotEmpty(mailMessage.getFrom())) { messageHelper.setFrom(mailMessage.getFrom()); mailFrom = mailMessage.getFrom(); } else { if (StringUtils.isEmpty(mailFrom)) { mailFrom = MailProperties.getString("mail.mailFrom"); } messageHelper.setFrom(mailFrom); } logger.debug("mailFrom:" + mailFrom); if (mailMessage.getTo() != null) { messageHelper.setTo(mailMessage.getTo()); } if (mailMessage.getCc() != null) { messageHelper.setCc(mailMessage.getCc()); } if (mailMessage.getBcc() != null) { messageHelper.setBcc(mailMessage.getBcc()); } if (mailMessage.getReplyTo() != null) { messageHelper.setReplyTo(mailMessage.getReplyTo()); } String mailSubject = mailMessage.getSubject(); if (mailSubject == null) { mailSubject = ""; } if (mailSubject != null) { // mailSubject = MimeUtility.encodeText(new // String(mailSubject.getBytes(), encoding), encoding, "B"); mailSubject = MimeUtility.encodeWord(mailSubject); } mimeMessage.setSubject(mailSubject); Map<String, Object> dataMap = mailMessage.getDataMap(); if (dataMap == null) { dataMap = new java.util.HashMap<String, Object>(); } String serviceUrl = SystemConfig.getServiceUrl(); logger.debug("mailSubject:" + mailSubject); logger.debug("serviceUrl:" + serviceUrl); if (serviceUrl != null) { String loginUrl = serviceUrl + "/mx/login"; String mainUrl = serviceUrl + "/mx/main"; logger.debug("loginUrl:" + loginUrl); dataMap.put("loginUrl", loginUrl); dataMap.put("mainUrl", mainUrl); } mailMessage.setDataMap(dataMap); if (StringUtils.isEmpty(mailMessage.getContent())) { Template template = TemplateContainer.getContainer().getTemplate(mailMessage.getTemplateId()); if (template != null) { String templateType = template.getTemplateType(); logger.debug("templateType:" + templateType); // logger.debug("content:" + template.getContent()); if (StringUtils.equals(templateType, "eml")) { if (template.getContent() != null) { Mail m = mailHelper.getMail(template.getContent().getBytes()); String content = m.getContent(); if (StringUtils.isNotEmpty(content)) { template.setContent(content); try { Writer writer = new StringWriter(); TemplateUtils.evaluate(mailMessage.getTemplateId(), dataMap, writer); String text = writer.toString(); writer.close(); writer = null; mailMessage.setContent(text); } catch (Exception ex) { ex.printStackTrace(); throw new RuntimeException(ex); } } } } else { try { String text = TemplateUtils.process(dataMap, template.getContent()); mailMessage.setContent(text); } catch (Exception ex) { ex.printStackTrace(); throw new RuntimeException(ex); } } } } if (StringUtils.isNotEmpty(mailMessage.getContent())) { String text = mailMessage.getContent(); if (StringUtils.isNotEmpty(callbackUrl)) { String href = callbackUrl + "?messageId=" + mailMessage.getMessageId(); text = mailHelper.embedCallbackScript(text, href); mailMessage.setContent(text); logger.debug(text); messageHelper.setText(text, true); } messageHelper.setText(text, true); } logger.debug("mail body:" + mailMessage.getContent()); Collection<Object> files = mailMessage.getFiles(); if (files != null && !files.isEmpty()) { Iterator<Object> iterator = files.iterator(); while (iterator.hasNext()) { Object object = iterator.next(); if (object instanceof java.io.File) { java.io.File file = (java.io.File) object; FileSystemResource resource = new FileSystemResource(file); String name = file.getName(); name = MailTools.chineseStringToAscii(name); messageHelper.addAttachment(name, resource); logger.debug("add attachment:" + name); } else if (object instanceof DataSource) { DataSource dataSource = (DataSource) object; String name = dataSource.getName(); name = MailTools.chineseStringToAscii(name); messageHelper.addAttachment(name, dataSource); logger.debug("add attachment:" + name); } else if (object instanceof DataFile) { DataFile dataFile = (DataFile) object; if (StringUtils.isNotEmpty(dataFile.getFilename())) { String name = dataFile.getFilename(); name = MailTools.chineseStringToAscii(name); InputStreamSource inputStreamSource = new MxMailInputSource(dataFile); messageHelper.addAttachment(name, inputStreamSource); logger.debug("add attachment:" + name); } } } } mimeMessage.setSentDate(new java.util.Date()); javaMailSender.send(mimeMessage); logger.info("-----------------------------------------"); logger.info("????"); logger.info("-----------------------------------------"); }
From source file:org.cgiar.dapa.ccafs.tpe.service.impl.TPEMailService.java
@Override public void notifyUser(final String userEmail, final Map<String, Object> templateVariables) { MimeMessagePreparator preparator = new MimeMessagePreparator() { public void prepare(MimeMessage mimeMessage) throws Exception { MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true); message.setTo(userEmail);/*from w ww. ja v a2 s . com*/ message.setFrom(new InternetAddress(adminEmail)); message.setSubject(SUBJECT_USER); String body = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, "templates/notify-user.vm", "UTF-8", templateVariables); log.info(body); message.setText(body, true); } }; this.mailSender.send(preparator); }
From source file:eu.openanalytics.rsb.component.EmailDepositHandlerTestCase.java
@Test public void handleJob() throws Exception { final MimeMessage mimeMessage = new MimeMessage((Session) null); final MimeMessageHelper mmh = new MimeMessageHelper(mimeMessage, true); mmh.setReplyTo("test@test.com"); mmh.setText("test job"); mmh.addAttachment("r-job-sample.zip", new ClassPathResource("data/r-job-sample.zip"), Constants.ZIP_CONTENT_TYPE); final DepositEmailConfiguration depositEmailConfiguration = mock(PersistedDepositEmailConfiguration.class); when(depositEmailConfiguration.getApplicationName()).thenReturn(TEST_APPLICATION_NAME); final Message<MimeMessage> message = MessageBuilder.withPayload(mimeMessage) .setHeader(EmailDepositHandler.EMAIL_CONFIG_HEADER_NAME, depositEmailConfiguration).build(); emailDepositHandler.handleJob(message); final ArgumentCaptor<MultiFilesJob> jobCaptor = ArgumentCaptor.forClass(MultiFilesJob.class); verify(messageDispatcher).dispatch(jobCaptor.capture()); final MultiFilesJob job = jobCaptor.getValue(); assertThat(job.getApplicationName(), is(TEST_APPLICATION_NAME)); assertThat(job.getMeta().containsKey(EmailDepositHandler.EMAIL_SUBJECT_META_NAME), is(true)); assertThat(job.getMeta().containsKey(EmailDepositHandler.EMAIL_ADDRESSEE_META_NAME), is(true)); assertThat(job.getMeta().containsKey(EmailDepositHandler.EMAIL_REPLY_TO_META_NAME), is(true)); assertThat(job.getMeta().containsKey(EmailDepositHandler.EMAIL_REPLY_CC_META_NAME), is(true)); assertThat(job.getMeta().containsKey(EmailDepositHandler.EMAIL_BODY_META_NAME), is(true)); assertThat(job.getSource(), is(Source.EMAIL)); job.destroy();/*from w w w . ja v a2 s . co m*/ }
From source file:net.maritimecloud.identityregistry.utils.EmailUtil.java
public void sendBugReport(BugReport report) throws MailException, MessagingException { MimeMessage message = this.mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setTo(bugReportEmail);/*from w w w . j a v a 2s .c o m*/ helper.setFrom(from); helper.setSubject(report.getSubject()); helper.setText(report.getDescription()); if (report.getAttachments() != null) { for (BugReportAttachment attachment : report.getAttachments()) { // Decode base64 encoded data byte[] data = Base64.getDecoder().decode(attachment.getData()); ByteArrayDataSource dataSource = new ByteArrayDataSource(data, attachment.getMimetype()); helper.addAttachment(attachment.getName(), dataSource); } } this.mailSender.send(message); }
From source file:com.gisgraphy.service.MailEngine.java
/** * Convenience method for sending messages with attachments. * /* w ww . jav a 2s. co m*/ * @param recipients * array of e-mail addresses * @param sender * e-mail address of sender * @param resource * attachment from classpath * @param bodyText * text in e-mail * @param subject * subject of e-mail * @param attachmentName * name for attachment * @throws MessagingException * thrown when can't communicate with SMTP server */ public void sendMessage(String[] recipients, String sender, ClassPathResource resource, String bodyText, String subject, String attachmentName) throws MessagingException { MimeMessage message = ((JavaMailSenderImpl) mailSender).createMimeMessage(); // use the true flag to indicate you need a multipart message MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setTo(recipients); helper.setFrom(sender); helper.setText(bodyText); helper.setSubject(subject); helper.addAttachment(attachmentName, resource); ((JavaMailSenderImpl) mailSender).send(message); }
From source file:de.metas.procurement.webui.service.impl.LoginService.java
@Override public void sendPasswordResetKey(final String email, final URI passwordResetURI) { Preconditions.checkNotNull(passwordResetURI, "passwordResetURI is null"); MimeMessage mail = emailSender.createMimeMessage(); try {/*from ww w . ja va2 s .com*/ MimeMessageHelper helper = new MimeMessageHelper(mail, true); // multipart=true if (emailFrom != null && !emailFrom.trim().isEmpty()) { helper.setFrom(emailFrom.trim()); } helper.setTo(email); helper.setSubject(i18n.get("PasswordReset.email.subject")); helper.setText(i18n.get("PasswordReset.email.content", passwordResetURI)); } catch (MessagingException e) { e.printStackTrace(); } finally { } emailSender.send(mail); }
From source file:org.sharetask.service.MailServiceImpl.java
@Override public void sendEmail(final String from, final List<String> to, final String subject, final String msg, final int retry) { final MimeMessage message = mailSender.createMimeMessage(); final MimeMessageHelper helper = new MimeMessageHelper(message, "UTF-8"); try {//from w w w . j a v a 2 s . c o m helper.setFrom(noreplyMail); helper.setTo(to.toArray(new String[] {})); helper.setSubject(subject); helper.setText(msg, true /* html */); log.debug("Sending mail to:{} content:{}", to, msg); mailSender.send(message); } catch (final MailException ex) { log.error("Problem in sending email notification:", ex); notificationQueueService.storeInvitation(noreplyMail, to, subject, msg, retry + 1); } catch (final MessagingException e) { throw new IllegalStateException("Wrong mail message format: ", e); } }
From source file:com.oak_yoga_studio.service.impl.NotificationServiceImpl.java
public void sendMail(String fromEmail, String toEmail, String emailSubject, String emailBody) { MimeMessage mimeMessage = javaMailSender.createMimeMessage(); try {//from w w w . jav a2 s .co m MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true); helper.setFrom(fromEmail); helper.setTo(toEmail); helper.setSubject(emailSubject); helper.setText(emailBody); /* uncomment the following lines for attachment FileSystemResource file = new FileSystemResource("attachment.jpg"); helper.addAttachment(file.getFilename(), file); */ javaMailSender.send(mimeMessage); System.out.println("Mail sent successfully.");//debugging } catch (MessagingException e) { e.printStackTrace(); } }