List of usage examples for org.springframework.mail.javamail MimeMessageHelper setText
public void setText(String text) throws MessagingException
From source file:org.openvpms.web.workspace.reporting.statement.StatementEmailProcessor.java
/** * Processes a statement./* ww w. j av a2s .c o m*/ * * @param statement the event to process * @throws OpenVPMSException for any error */ public void process(Statement statement) { try { MimeMessage message = sender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true); List<Contact> contacts = statement.getContacts(); if (contacts.isEmpty()) { throw new StatementProcessorException(NoContact, statement.getCustomer()); } Contact contact = contacts.get(0); IMObjectBean bean = new IMObjectBean(contact); if (!bean.isA(ContactArchetypes.EMAIL)) { throw new StatementProcessorException(NoContact, statement.getCustomer()); } String to = bean.getString("emailAddress"); EmailAddress email = addresses.getAddress(statement.getCustomer()); helper.setFrom(email.getAddress(), email.getName()); helper.setTo(to); helper.setSubject(emailSubject); helper.setText(emailText); Iterable<IMObject> objects = getActs(statement); Reporter reporter = ReporterFactory.create(objects, template, TemplatedReporter.class); reporter.setParameters(getParameters(statement)); reporter.setFields(fields); final Document doc = reporter.getDocument(DocFormats.PDF_TYPE, true); final DocumentHandler handler = handlers.get(doc.getName(), doc.getArchetypeId().getShortName(), doc.getMimeType()); helper.addAttachment(doc.getName(), new InputStreamSource() { public InputStream getInputStream() { return handler.getContent(doc); } }); sender.send(message); if (!statement.isPreview() && !statement.isPrinted()) { setPrinted(statement); } } catch (ArchetypeServiceException exception) { throw exception; } catch (StatementProcessorException exception) { throw exception; } catch (Throwable exception) { throw new StatementProcessorException(exception, FailedToProcessStatement, exception.getMessage()); } }
From source file:org.osaf.cosmo.service.account.EmailAccountActivator.java
public void sendActivationMessage(final User user, final ActivationContext activationContext) { mailSender.send(new MimeMessagePreparator() { public void prepare(MimeMessage mimeMessage) throws MessagingException { Locale locale = activationContext.getLocale(); User sender = activationContext.getSender(); String fromAddr = sender.getEmail(); String fromHandle = messageSource.getMessage(MSG_ACTIVATION_HANDLE, new Object[] {}, locale); String subject = messageSource.getMessage(MSG_ACTIVATION_SUBJECT, new Object[] { user.getUsername() }, locale); String text = messageSource.getMessage(MSG_ACTIVATION_TEXT, new Object[] { user.getUsername(), activationContext.getHostname(), activationContext.getActivationLink(user.getActivationId()) }, locale);//from w w w . j ava2 s . c om MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("\"" + fromHandle + "\" <" + fromAddr + ">"); message.setTo(user.getEmail()); message.setSubject(subject); message.setText(text); } }); log.info("Account activation link sent to " + user.getEmail()); }
From source file:org.osaf.cosmo.service.account.EmailPasswordRecoverer.java
public void sendRecovery(final PasswordRecovery passwordRecovery, final PasswordRecoveryMessageContext context) { // Create final variable so it is available in message preparator below final User user = passwordRecovery.getUser(); mailSender.send(new MimeMessagePreparator() { public void prepare(MimeMessage mimeMessage) throws MessagingException { Locale locale = context.getLocale(); User sender = context.getSender(); String fromAddr = sender.getEmail(); String fromHandle = messageSource.getMessage(MSG_PASSWORD_RECOVERY_HANDLE, new Object[] {}, locale); String subject = messageSource.getMessage(MSG_PASSWORD_RECOVERY_SUBJECT, new Object[] { user.getUsername() }, locale); String text = messageSource.getMessage(MSG_PASSWORD_RECOVERY_TEXT, new Object[] { user.getUsername(), context.getHostname(), context.getRecoveryLink() }, locale);//from w w w . j av a2 s. c o m MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("\"" + fromHandle + "\" <" + fromAddr + ">"); message.setTo(user.getEmail()); message.setSubject(subject); message.setText(text); } }); log.info("Password recovery link sent to " + user.getEmail() + " with key " + passwordRecovery.getKey()); }
From source file:org.osaf.cosmo.ui.account.CredentialsReminderFormController.java
/** * Looks up the user for the entered email address and: * * <ul>/*ww w . ja v a2s . co m*/ * <li> If the username button was clicked, sends a reminder email * containing the username to the user's email address * <li> If the password button was clicked, reset's the user's * password and sends a confirmation email containing the new * password to the user's email address * </ul> * * @see UIConstants#FWD_OK * public ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { throws Exception { BeanValidatorForm forgotForm = (BeanValidatorForm) form; String email = (String) forgotForm.get(FORM_EMAIL); User user = null; try { user = userService.getUserByEmail(email); } catch (DataRetrievalFailureException e) { saveErrorMessage(request, MSG_ERROR_EMAIL_NOT_FOUND); return mapping.findForward(UIConstants.FWD_FAILURE); } if (wasUsernameButtonClicked(forgotForm)) { sendUsernameReminderMessage(request, response, user); saveConfirmationMessage(request, MSG_CONFIRM_USERNAME); } if (wasPasswordButtonClicked(forgotForm)) { String newPassword = userService.generatePassword(); user.setPassword(newPassword); userService.updateUser(user); sendPasswordResetMessage(request, response, user, newPassword); saveConfirmationMessage(request, MSG_CONFIRM_PASSWORD); } return mapping.findForward(UIConstants.FWD_OK); } public boolean wasUsernameButtonClicked(BeanValidatorForm form) { return form.get(FORM_BUTTON_USERNAME) != null; } public boolean wasPasswordButtonClicked(BeanValidatorForm form) { return form.get(FORM_BUTTON_PASSWORD) != null; } private void sendUsernameReminderMessage(final HttpServletRequest request, final HttpServletResponse response, final User user) { mailSender.send(new MimeMessagePreparator() { public void prepare(MimeMessage mimeMessage) throws MessagingException { MessageResources resources = getResources(request); Locale locale = getLocale(request); User rootUser = userService.getUser(User.USERNAME_OVERLORD); String fromAddr = (String) getServlet().getServletContext(). getAttribute(CosmoConstants.SC_ATTR_SERVER_ADMIN); String fromHandle = resources.getMessage(locale, MSG_USERNAME_REMINDER_FROMHANDLE); String subject = resources.getMessage(locale, MSG_USERNAME_REMINDER_SUBJECT); String text = resources.getMessage(locale, MSG_USERNAME_REMINDER_TEXT, user.getUsername(), getContextRelativeURL(request, "/"), rootUser.getEmail()); MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("\"" + fromHandle + "\" <" + fromAddr + ">"); message.setTo(user.getEmail()); message.setSubject(subject); message.setText(text); } }); } */ private void sendPasswordResetMessage(final HttpServletRequest request, final HttpServletResponse response, final User user, final String newPassword) { mailSender.send(new MimeMessagePreparator() { public void prepare(MimeMessage mimeMessage) throws MessagingException { Locale locale = request.getLocale(); User rootUser = userService.getUser(User.USERNAME_OVERLORD); String fromAddr = rootUser.getEmail(); String fromHandle = messageSource.getMessage(MSG_PASSWORD_RESET_FROMHANDLE, new Object[] {}, locale); String subject = messageSource.getMessage(MSG_PASSWORD_RESET_SUBJECT, new Object[] {}, locale); String text = messageSource.getMessage(MSG_PASSWORD_RESET_TEXT, new Object[] { newPassword, request.getContextPath(), rootUser.getEmail() }, locale); MimeMessageHelper message = new MimeMessageHelper(mimeMessage); message.setFrom("\"" + fromHandle + "\" <" + fromAddr + ">"); message.setTo(user.getEmail()); message.setSubject(subject); message.setText(text); } }); }
From source file:org.sipfoundry.sipxconfig.admin.mail.MailSenderContextImpl.java
public void sendMail(String to, String from, String subject, String body, File... files) { if (files == null || files.length == 0) { sendMail(to, from, subject, body); return;/*from w ww . j a v a 2 s. co m*/ } try { MimeMessage msg = m_mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(msg, true); helper.setTo(getFullAddress(to)); helper.setFrom(getFullAddress(from)); helper.setSubject(subject); helper.setText(body); for (File f : files) { helper.addAttachment(f.getName(), f); } m_mailSender.send(msg); } catch (MailException e) { LOG.error(e); } catch (MessagingException e) { LOG.error(e); } }
From source file:org.springframework.integration.samples.mailattachments.MimeMessageParsingTest.java
/** * This test will create a Mime Message that contains an Attachment, send it * to an SMTP Server (Using Wiser) and retrieve and process the Mime Message. * * This test verifies that the parsing of the retrieved Mime Message is * successful and that the correct number of {@link EmailFragment}s is created. *//*from www . ja va 2 s . c o m*/ @Test public void testProcessingOfEmailAttachments() { final JavaMailSenderImpl mailSender = new JavaMailSenderImpl(); mailSender.setPort(this.wiserPort); final MimeMessage message = mailSender.createMimeMessage(); final String pictureName = "picture.png"; final ByteArrayResource byteArrayResource = getFileData(pictureName); try { final MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setFrom("testfrom@springintegration.org"); helper.setTo("testto@springintegration.org"); helper.setSubject("Parsing of Attachments"); helper.setText("Spring Integration Rocks!"); helper.addAttachment(pictureName, byteArrayResource, "image/png"); } catch (MessagingException e) { throw new MailParseException(e); } mailSender.send(message); final List<WiserMessage> wiserMessages = wiser.getMessages(); Assert.assertTrue(wiserMessages.size() == 1); boolean foundTextMessage = false; boolean foundPicture = false; for (WiserMessage wiserMessage : wiserMessages) { final List<EmailFragment> emailFragments = new ArrayList<EmailFragment>(); try { final MimeMessage mailMessage = wiserMessage.getMimeMessage(); EmailParserUtils.handleMessage(null, mailMessage, emailFragments); } catch (MessagingException e) { throw new IllegalStateException("Error while retrieving Mime Message."); } Assert.assertTrue(emailFragments.size() == 2); for (EmailFragment emailFragment : emailFragments) { if ("picture.png".equals(emailFragment.getFilename())) { foundPicture = true; } if ("message.txt".equals(emailFragment.getFilename())) { foundTextMessage = true; } } Assert.assertTrue(foundPicture); Assert.assertTrue(foundTextMessage); } }
From source file:org.thingsboard.rule.engine.mail.TbSendEmailNode.java
private void sendEmail(TbContext ctx, EmailPojo email) throws Exception { if (this.config.isUseSystemSmtpSettings()) { ctx.getMailService().send(email.getFrom(), email.getTo(), email.getCc(), email.getBcc(), email.getSubject(), email.getBody()); } else {//from www .ja v a 2s . c o m MimeMessage mailMsg = mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(mailMsg, "UTF-8"); helper.setFrom(email.getFrom()); helper.setTo(email.getTo().split("\\s*,\\s*")); if (!StringUtils.isBlank(email.getCc())) { helper.setCc(email.getCc().split("\\s*,\\s*")); } if (!StringUtils.isBlank(email.getBcc())) { helper.setBcc(email.getBcc().split("\\s*,\\s*")); } helper.setSubject(email.getSubject()); helper.setText(email.getBody()); mailSender.send(helper.getMimeMessage()); } }
From source file:org.thingsboard.server.service.mail.DefaultMailService.java
@Override public void send(String from, String to, String cc, String bcc, String subject, String body) throws MessagingException { MimeMessage mailMsg = mailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(mailMsg, "UTF-8"); helper.setFrom(StringUtils.isBlank(from) ? mailFrom : from); helper.setTo(to.split("\\s*,\\s*")); if (!StringUtils.isBlank(cc)) { helper.setCc(cc.split("\\s*,\\s*")); }//from w w w . j a v a 2s . com if (!StringUtils.isBlank(bcc)) { helper.setBcc(bcc.split("\\s*,\\s*")); } helper.setSubject(subject); helper.setText(body); mailSender.send(helper.getMimeMessage()); }
From source file:org.wso2.security.tools.automation.manager.handler.MailHandler.java
/** * Send an email with an attachment//from w w w. ja v a2 s . c o m * * @param to To whom the email is sent * @param subject Email subject * @param body Email body * @param inputStream Input stream of an attachment * @param attachmentFileName Attachment file name * @throws MessagingException Exceptions thrown by the Messaging classes * @throws IOException Signals that an I/O exception of some sort has occurred */ public void sendMail(String to, String subject, String body, InputStream inputStream, String attachmentFileName) throws MessagingException, IOException { LOGGER.info("Sending email"); MimeMessage mimeMessage = mailSender.createMimeMessage(); MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true); mimeMessageHelper.setSubject(subject); mimeMessageHelper.setTo(to); mimeMessageHelper.setText(body); mimeMessageHelper.addAttachment(attachmentFileName, new ByteArrayResource(IOUtils.toByteArray(inputStream))); mailSender.send(mimeMessageHelper.getMimeMessage()); }
From source file:ubic.gemma.util.MailEngineImpl.java
/** * Convenience method for sending messages with attachments. * //from www. ja v a 2 s. com * @param emailAddresses * @param resource to be attached * @param bodyText * @param subject * @param attachmentName * @throws MessagingException * @author Ben Gill */ @Override public void sendMessage(String[] emailAddresses, 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(emailAddresses); helper.setText(bodyText); helper.setSubject(subject); helper.addAttachment(attachmentName, resource); ((JavaMailSenderImpl) mailSender).send(message); }