List of usage examples for org.springframework.mail.javamail MimeMessageHelper setText
public void setText(String plainText, String htmlText) throws MessagingException
From source file:mx.edu.um.mateo.general.web.BaseController.java
protected void enviaCorreo(String tipo, List<?> lista, HttpServletRequest request, String nombre, String tipoReporte, Long id) throws ReporteException { try {//ww w. j a v a2 s.com log.debug("Enviando correo {}", tipo); byte[] archivo = null; String tipoContenido = null; switch (tipo) { case "PDF": archivo = generaPdf(lista, nombre, tipoReporte, id); tipoContenido = "application/pdf"; break; case "CSV": archivo = generaCsv(lista, nombre, tipoReporte, id); tipoContenido = "text/csv"; break; case "XLS": archivo = generaXls(lista, nombre, tipoReporte, id); tipoContenido = "application/vnd.ms-excel"; } MimeMessage message = mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setTo(ambiente.obtieneUsuario().getCorreo()); String titulo = messageSource.getMessage(nombre + ".reporte.label", null, request.getLocale()); helper.setSubject(messageSource.getMessage("envia.correo.titulo.message", new String[] { titulo }, request.getLocale())); helper.setText(messageSource.getMessage("envia.correo.contenido.message", new String[] { titulo }, request.getLocale()), true); helper.addAttachment(titulo + "." + tipo, new ByteArrayDataSource(archivo, tipoContenido)); mailSender.send(message); } catch (JRException | MessagingException e) { throw new ReporteException("No se pudo generar el reporte", e); } }
From source file:nl.surfnet.coin.shared.service.ErrorMessageMailer.java
private MimeMessageHelper addBody(MimeMessageHelper helper, String template, ErrorMail errorMail) throws MessagingException { DateTime dateTime = new DateTime(); DateTimeFormatter dateFormatter = DateTimeFormat.forPattern(DATE_FORMAT); DateTimeFormatter timeFormatter = DateTimeFormat.forPattern(TIME_FORMAT); String date = dateFormatter.print(dateTime); String time = timeFormatter.print(dateTime); String body = MessageFormat.format(template, date, time, errorMail.getServer(), errorMail.getComponent(), errorMail.getUserId(), errorMail.getIdp(), errorMail.getSp(), errorMail.getMessage(), errorMail.getLocation(), errorMail.getDetails()); helper.setText(body, true); return helper; }
From source file:eu.trentorise.smartcampus.citizenportal.service.EmailService.java
public String sendMailVLClassification(final String period, final String mailDate, final String protocolCode, final String recipientName, final String recipientAddress, final String recipientCity, final String recipientPhone, final String recipientEmail, final String practice_id, final String position, final String score, final String determinationCode, final String determinationDate, final String alboDate, final String expirationDate, final String phase, final String ef_period, final String ef_category, final String ef_tool, final String classificationUrl, final String respName, final String subject, final Locale locale, final MailImage logoImage, final MailImage footerImage, final int type) throws MessagingException { // Prepare the evaluation context final Context ctx = new Context(locale); ctx.setVariable("imagelogoMyweb", logoImage.getImageName()); ctx.setVariable("mailDate", mailDate); ctx.setVariable("period", period); ctx.setVariable("protCode", protocolCode); ctx.setVariable("name", recipientName); ctx.setVariable("address", recipientAddress); ctx.setVariable("city", recipientCity); ctx.setVariable("phone", recipientPhone); ctx.setVariable("detCode", determinationCode); ctx.setVariable("detDate", determinationDate); ctx.setVariable("alboDate", alboDate); ctx.setVariable("expDate", expirationDate); ctx.setVariable("practice_id", practice_id); ctx.setVariable("position", position); ctx.setVariable("score", score); ctx.setVariable("phase", phase); ctx.setVariable("ef_period", ef_period); ctx.setVariable("ef_category", ef_category); ctx.setVariable("ef_tool", ef_tool); ctx.setVariable("classification_url", classificationUrl); ctx.setVariable("respName", respName); ctx.setVariable("subscriptionDate", new Date()); //ctx.setVariable("hobbies", Arrays.asList("Cinema", "Sports", "Music")); ctx.setVariable("text", subject); ctx.setVariable("imagefooterVallag", footerImage.getImageName()); // Prepare message using a Spring helper final MimeMessage mimeMessage = this.mailSender.createMimeMessage(); final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true /* multipart */, "UTF-8"); message.setSubject("Graduatoria Edilizia Abitativa"); //message.setFrom("thymeleaf@example.com"); message.setFrom("myweb.edilizia@comunitadellavallagarina.tn.it"); //message.setFrom("myweb-graduatoria@smartcommunitylab.it"); message.setTo(recipientEmail);/*from w ww . ja v a 2s. co m*/ // Create the HTML body using Thymeleaf if (type == 1) { final String htmlContent = this.templateEngine.process("email-vallagarina.html", ctx); message.setText(htmlContent, true /* isHtml */); } else { final String htmlContent = this.templateEngine.process("email-vallagarina-final.html", ctx); message.setText(htmlContent, true /* isHtml */); } // Add the inline titles image, referenced from the HTML code as "cid:${imageResourceName}" final InputStreamSource imageLogo = new ByteArrayResource(logoImage.getImageByte()); message.addInline(logoImage.getImageName(), imageLogo, logoImage.getImageType()); // Add the inline footer image, referenced from the HTML code as "cid:${imageResourceName}" final InputStreamSource imageFooter = new ByteArrayResource(footerImage.getImageByte()); message.addInline(footerImage.getImageName(), imageFooter, footerImage.getImageType()); // Add the attachment //final InputStreamSource attachmentSource = new ByteArrayResource(attachmentBytes); //message.addAttachment( // attachmentFileName, attachmentSource, attachmentContentType); // Send mail this.mailSender.send(mimeMessage); return recipientName + "OK"; }
From source file:com.web.mavenproject6.service.MailSenderService.java
@Async public void sendAuthorizationMail(final Users user, final SecurityCode securityCode) { MimeMessagePreparator preparator = new MimeMessagePreparator() { @Override/* w w w . j av a 2 s .c o m*/ public void prepare(MimeMessage mimeMessage) throws Exception { MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setSubject(mailForm.getSubject()); message.setTo(user.getEmail()); message.setFrom(mailForm.getFrom()); Map model = new HashMap(); model.put("websiteName", mailForm.getWebsiteName()); model.put("host", mailForm.getHost()); model.put("user", user); model.put("securityCode", securityCode); model.put("projectName", env.getProperty("projectName")); System.out.println("MAIL!!:" + user.toString()); String text = VelocityEngineUtils.mergeTemplateIntoString(velocityEngine, CONFIRMATION_TEMPLATE, model); message.setText(text, true); } }; this.mailSender.send(preparator); }
From source file:app.service.CaptchaService.java
protected void sendEmail(String email, String authCode) throws MessagingException, UnsupportedEncodingException { MimeMessage mimeMessage = mMailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, "UTF-8"); helper.setSubject(" LsPush "); helper.setFrom(serverEmail, serverName); helper.setTo(email);//from w w w .j a v a 2s. c o m String authLink = String.format("%s/user/auth?auth_code=%s", serverUrl, authCode); final Context ctx = new Context(Locale.CHINA); ctx.setVariable("serverUrl", serverUrl); ctx.setVariable("serverName", serverName); ctx.setVariable("email", email); ctx.setVariable("authCode", authCode); ctx.setVariable("authLink", authLink); String html = mTemplateEngine.process("lspush_captcha_email", ctx); helper.setText(html, true); mMailSender.send(mimeMessage); }
From source file:dk.nsi.haiba.epimibaimporter.email.EmailSender.java
private void sendText(final String subject, final String nonHtml) { MimeMessagePreparator preparator = new MimeMessagePreparator() { @Override// ww w .j a v a 2 s . c o m public void prepare(MimeMessage mimeMessage) throws Exception { MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true); messageHelper.setValidateAddresses(true); String[] split = to_commaseparated.split(","); for (String emailAddress : split) { emailAddress = emailAddress.trim(); try { log.trace("adding " + emailAddress); messageHelper.addTo(emailAddress); log.trace("added " + emailAddress); } catch (MessagingException e) { log.error("unable to parse email address from " + emailAddress, e); } } messageHelper.setFrom(from); messageHelper.setSubject(subject); messageHelper.setText(nonHtml, false); } }; javaMailSender.send(preparator); }
From source file:org.wallride.service.UserService.java
@CacheEvict(value = WallRideCacheConfiguration.USER_CACHE, allEntries = true) public UserInvitation inviteAgain(UserInvitationResendRequest form, BindingResult result, AuthorizedUser authorizedUser) throws MessagingException { LocalDateTime now = LocalDateTime.now(); UserInvitation invitation = userInvitationRepository.findOneForUpdateByToken(form.getToken()); invitation.setExpiredAt(now.plusHours(72)); invitation.setUpdatedAt(now);/*from w ww . j av a 2s .c o m*/ invitation.setUpdatedBy(authorizedUser.toString()); invitation = userInvitationRepository.saveAndFlush(invitation); Blog blog = blogService.getBlogById(Blog.DEFAULT_ID); String websiteTitle = blog.getTitle(LocaleContextHolder.getLocale().getLanguage()); String signupLink = ServletUriComponentsBuilder.fromCurrentContextPath().path("/_admin/signup") .queryParam("token", invitation.getToken()).buildAndExpand().toString(); final Context ctx = new Context(LocaleContextHolder.getLocale()); ctx.setVariable("websiteTitle", websiteTitle); ctx.setVariable("authorizedUser", authorizedUser); ctx.setVariable("signupLink", signupLink); ctx.setVariable("invitation", invitation); final MimeMessage mimeMessage = mailSender.createMimeMessage(); final MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8"); // true = multipart message.setSubject(MessageFormat.format( messageSourceAccessor.getMessage("InvitationMessageTitle", LocaleContextHolder.getLocale()), authorizedUser.toString(), websiteTitle)); message.setFrom(authorizedUser.getEmail()); message.setTo(invitation.getEmail()); final String htmlContent = templateEngine.process("user-invite", ctx); message.setText(htmlContent, true); // true = isHtml mailSender.send(mimeMessage); return invitation; }
From source file:com.apress.progwt.server.service.impl.InvitationServiceImpl.java
public void sendInvite(final MailingListEntry invitation) throws InfrastructureException { // send mail// w ww . j a v a 2 s .c o m try { MimeMessagePreparator preparator = new MimeMessagePreparator() { public void prepare(MimeMessage mimeMessage) throws Exception { MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setTo(invitation.getEmail()); message.setFrom(from); message.setSubject("ToCollege.net Invitation"); Map<String, Object> model = new HashMap<String, Object>(); model.put("inviter", invitation.getInviter()); model.put("randomkey", invitation.getRandomkey()); model.put("email", invitation.getEmail()); Template textTemplate = configurer.getConfiguration().getTemplate(invitationTemplate); final StringWriter textWriter = new StringWriter(); textTemplate.process(model, textWriter); message.setText(textWriter.toString(), true); log.info("Inviting: " + invitation.getEmail()); log.debug("From: " + from); log.debug("Message: " + textWriter.toString()); } }; this.mailSender.send(preparator); invitation.setSentEmailOk(true); mailingListDAO.save(invitation); } catch (Exception e) { log.error(e); throw new InfrastructureException(e); } }
From source file:org.wallride.service.UserService.java
public PasswordResetToken createPasswordResetToken(PasswordResetTokenCreateRequest request) { User user = userRepository.findOneByEmail(request.getEmail()); if (user == null) { throw new EmailNotFoundException(); }//from ww w .j ava 2 s . c om LocalDateTime now = LocalDateTime.now(); PasswordResetToken passwordResetToken = new PasswordResetToken(); passwordResetToken.setUser(user); passwordResetToken.setEmail(user.getEmail()); passwordResetToken.setExpiredAt(now.plusHours(24)); passwordResetToken.setCreatedAt(now); passwordResetToken.setCreatedBy(user.toString()); passwordResetToken.setUpdatedAt(now); passwordResetToken.setUpdatedBy(user.toString()); passwordResetToken = passwordResetTokenRepository.saveAndFlush(passwordResetToken); try { Blog blog = blogService.getBlogById(Blog.DEFAULT_ID); String blogTitle = blog.getTitle(LocaleContextHolder.getLocale().getLanguage()); ServletUriComponentsBuilder builder = ServletUriComponentsBuilder.fromCurrentContextPath(); if (blog.isMultiLanguage()) { builder.path("/{language}"); } builder.path("/password-reset"); builder.path("/{token}"); Map<String, Object> urlVariables = new LinkedHashMap<>(); urlVariables.put("language", request.getLanguage()); urlVariables.put("token", passwordResetToken.getToken()); String resetLink = builder.buildAndExpand(urlVariables).toString(); Context ctx = new Context(LocaleContextHolder.getLocale()); ctx.setVariable("passwordResetToken", passwordResetToken); ctx.setVariable("resetLink", resetLink); MimeMessage mimeMessage = mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8"); // true = multipart message.setSubject(MessageFormat.format( messageSourceAccessor.getMessage("PasswordResetSubject", LocaleContextHolder.getLocale()), blogTitle)); message.setFrom(mailProperties.getProperties().get("mail.from")); message.setTo(passwordResetToken.getEmail()); String htmlContent = templateEngine.process("password-reset", ctx); message.setText(htmlContent, true); // true = isHtml mailSender.send(mimeMessage); } catch (MessagingException e) { throw new ServiceException(e); } return passwordResetToken; }
From source file:org.wallride.service.UserService.java
@CacheEvict(value = WallRideCacheConfiguration.USER_CACHE, allEntries = true) public User updatePassword(PasswordUpdateRequest request, PasswordResetToken passwordResetToken) { User user = userRepository.findOneForUpdateById(request.getUserId()); if (user == null) { throw new IllegalArgumentException("The user does not exist"); }// w w w . j a va 2 s. c o m PasswordEncoder passwordEncoder = new StandardPasswordEncoder(); user.setLoginPassword(passwordEncoder.encode(request.getPassword())); user.setUpdatedAt(LocalDateTime.now()); user.setUpdatedBy(passwordResetToken.getUser().toString()); user = userRepository.saveAndFlush(user); passwordResetTokenRepository.delete(passwordResetToken); try { Blog blog = blogService.getBlogById(Blog.DEFAULT_ID); String blogTitle = blog.getTitle(LocaleContextHolder.getLocale().getLanguage()); ServletUriComponentsBuilder builder = ServletUriComponentsBuilder.fromCurrentContextPath(); if (blog.isMultiLanguage()) { builder.path("/{language}"); } builder.path("/login"); Map<String, Object> urlVariables = new LinkedHashMap<>(); urlVariables.put("language", request.getLanguage()); urlVariables.put("token", passwordResetToken.getToken()); String loginLink = builder.buildAndExpand(urlVariables).toString(); Context ctx = new Context(LocaleContextHolder.getLocale()); ctx.setVariable("passwordResetToken", passwordResetToken); ctx.setVariable("resetLink", loginLink); MimeMessage mimeMessage = mailSender.createMimeMessage(); MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8"); // true = multipart message.setSubject(MessageFormat.format( messageSourceAccessor.getMessage("PasswordChangedSubject", LocaleContextHolder.getLocale()), blogTitle)); message.setFrom(mailProperties.getProperties().get("mail.from")); message.setTo(passwordResetToken.getEmail()); String htmlContent = templateEngine.process("password-changed", ctx); message.setText(htmlContent, true); // true = isHtml mailSender.send(mimeMessage); } catch (MessagingException e) { throw new ServiceException(e); } return user; }