List of usage examples for javax.mail.internet MimeMessage getSubject
@Override public String getSubject() throws MessagingException
From source file:org.bonitasoft.connectors.email.test.EmailConnectorTest.java
@Test public void sendBadEncodingCyrillicEmail() throws Exception { final Map<String, Object> parameters = getBasicSettings(); parameters.put("charset", "iso-8859-1"); parameters.put("message", CYRILLIC_MESSAGE); executeConnector(parameters);/*from ww w . ja v a2s .c om*/ final List<WiserMessage> messages = server.getMessages(); assertEquals(1, messages.size()); final WiserMessage message = messages.get(0); assertNotNull(message.getEnvelopeSender()); assertEquals(ADDRESSJOHN, message.getEnvelopeReceiver()); final MimeMessage mime = message.getMimeMessage(); assertEquals(SUBJECT, mime.getSubject()); assertTrue(mime.getContentType().contains(TEXT_PLAIN)); assertEquals("? ? ?", mime.getContent()); }
From source file:org.craftercms.commons.mail.impl.EmailFactoryImplTest.java
@Test public void testGetEmailWithBodyParam() throws Exception { EmailImpl email = (EmailImpl) emailFactory.getEmail(FROM, TO, CC, BCC, REPLY_TO, SUBJECT, BODY, false); assertNotNull(email);/*from w w w. ja va 2 s . c o m*/ MimeMessage msg = email.message; assertArrayEquals(InternetAddress.parse(FROM), msg.getFrom()); assertArrayEquals(InternetAddress.parse(StringUtils.join(TO)), msg.getRecipients(Message.RecipientType.TO)); assertArrayEquals(InternetAddress.parse(StringUtils.join(CC)), msg.getRecipients(Message.RecipientType.CC)); assertArrayEquals(InternetAddress.parse(StringUtils.join(BCC)), msg.getRecipients(Message.RecipientType.BCC)); assertArrayEquals(InternetAddress.parse(REPLY_TO), msg.getReplyTo()); assertEquals(SUBJECT, msg.getSubject()); assertEquals(BODY, msg.getContent()); }
From source file:org.craftercms.commons.mail.impl.EmailFactoryImplTest.java
@Test public void testGetEmailWithBodyTemplate() throws Exception { Map<String, Object> model = Collections.<String, Object>singletonMap("name", "John Doe"); String body = processTemplate(TEMPLATE_NAME, model); EmailImpl email = (EmailImpl) emailFactory.getEmail(FROM, TO, CC, BCC, REPLY_TO, SUBJECT, TEMPLATE_NAME, model, false);/*from w w w .j a va 2 s . co m*/ assertNotNull(email); MimeMessage msg = email.message; assertArrayEquals(InternetAddress.parse(FROM), msg.getFrom()); assertArrayEquals(InternetAddress.parse(StringUtils.join(TO)), msg.getRecipients(Message.RecipientType.TO)); assertArrayEquals(InternetAddress.parse(StringUtils.join(CC)), msg.getRecipients(Message.RecipientType.CC)); assertArrayEquals(InternetAddress.parse(StringUtils.join(BCC)), msg.getRecipients(Message.RecipientType.BCC)); assertArrayEquals(InternetAddress.parse(REPLY_TO), msg.getReplyTo()); assertEquals(SUBJECT, msg.getSubject()); assertEquals(body, msg.getContent()); }
From source file:org.drools.task.service.IcalBaseTest.java
public void testSendWithStartandEndDeadline() throws Exception { Map vars = new HashedMap(); vars.put("users", users); vars.put("groups", groups); vars.put("now", new Date()); String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, createdBy = users['tony'], activationTime = now}), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) {potentialOwners = [users['steve' ], users['tony' ]]}), "; str += "names = [ new I18NText( 'en-UK', 'This is my task name')],"; str += "subjects = [ new I18NText( 'en-UK', 'This is my task subject')],"; str += "descriptions = [ new I18NText( 'en-UK', 'This is my task description')],"; str += "deadlines = (with (new Deadlines() ) {"; str += " startDeadlines = [ "; str += " (with (new Deadline()) {"; str += " date = now"; str += " } ) ],"; str += " endDeadlines = ["; str += " (with (new Deadline()) {"; str += " date = new Date( now.time + ( 1000 * 60 * 60 * 24 ) )"; // set to tomorrow str += " } ) ]"; str += "} ) })"; MockUserInfo userInfo = new MockUserInfo(); userInfo.getEmails().put(users.get("tony"), "tony@domain.com"); userInfo.getEmails().put(users.get("steve"), "steve@domain.com"); userInfo.getLanguages().put(users.get("tony"), "en-UK"); userInfo.getLanguages().put(users.get("steve"), "en-UK"); taskService.setUserinfo(userInfo);/* ww w. j av a 2s .c o m*/ BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler(); Task task = (Task) eval(new StringReader(str), vars); client.addTask(task, null, addTaskResponseHandler); long taskId = addTaskResponseHandler.getTaskId(); BlockingTaskOperationResponseHandler responseHandler = new BlockingTaskOperationResponseHandler(); client.claim(taskId, users.get("steve").getId(), responseHandler); responseHandler.waitTillDone(5000); assertEquals(2, getWiser().getMessages().size()); assertEquals("steve@domain.com", getWiser().getMessages().get(0).getEnvelopeReceiver()); assertEquals("steve@domain.com", getWiser().getMessages().get(1).getEnvelopeReceiver()); String subject = "Summary\n-------\n\nThis is my task subject\n\n"; String description = "Description\n-----------\n\nThis is my task description"; MimeMessage msg = ((WiserMessage) getWiser().getMessages().get(0)).getMimeMessage(); assertEqualsIgnoreWhitespace("multipart/alternative;boundary=\"----=_Part_", msg.getContentType(), 0, 47); assertEquals("tony@domain.com", ((InternetAddress) msg.getFrom()[0]).getAddress()); assertEquals("tony@domain.com", ((InternetAddress) msg.getReplyTo()[0]).getAddress()); assertEquals("steve@domain.com", ((InternetAddress) msg.getRecipients(RecipientType.TO)[0]).getAddress()); assertEquals("Task Assignment Start Event: This is my task name", msg.getSubject()); MimeMultipart multiPart = (MimeMultipart) msg.getContent(); BodyPart messageBodyPart = multiPart.getBodyPart(0); assertEquals("text/plain; charset=UTF8;", messageBodyPart.getDataHandler().getContentType()); String content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace(subject + description, content); messageBodyPart = multiPart.getBodyPart(1); assertEquals("text/calendar; charset=UTF8; name=ical-Start-1.ics", messageBodyPart.getDataHandler().getContentType()); content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace( "BEGIN:VCALENDARPRODID:-//iCal4j 1.0//ENCALSCALE:GREGORIANVERSION:2.0METHOD:REQUESTBEGIN:VEVENTDTSTART;TZID=UTC:", content.substring(0, 123)); assertEqualsIgnoreWhitespace( "SUMMARY:\"Task Start : This is my task subject\"DESCRIPTION:\"This is my task description\"PRIORITY:55END:VEVENTEND:VCALENDAR", content.substring(content.length() - 131, content.length())); msg = ((WiserMessage) getWiser().getMessages().get(1)).getMimeMessage(); assertEqualsIgnoreWhitespace("multipart/alternative;boundary=\"----=_Part_", msg.getContentType(), 0, 47); assertEquals("tony@domain.com", ((InternetAddress) msg.getFrom()[0]).getAddress()); assertEquals("tony@domain.com", ((InternetAddress) msg.getReplyTo()[0]).getAddress()); assertEquals("steve@domain.com", ((InternetAddress) msg.getRecipients(RecipientType.TO)[0]).getAddress()); assertEquals("Task Assignment End Event: This is my task name", msg.getSubject()); multiPart = (MimeMultipart) msg.getContent(); messageBodyPart = multiPart.getBodyPart(0); assertEquals("text/plain; charset=UTF8;", messageBodyPart.getDataHandler().getContentType()); content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace(subject + description, content); messageBodyPart = multiPart.getBodyPart(1); assertEquals("text/calendar; charset=UTF8; name=ical-End-1.ics", messageBodyPart.getDataHandler().getContentType()); content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace( "BEGIN:VCALENDARPRODID:-//iCal4j 1.0//ENCALSCALE:GREGORIANVERSION:2.0METHOD:REQUESTBEGIN:VEVENTDTSTART;TZID=UTC:", content.substring(0, 123)); assertEqualsIgnoreWhitespace( "SUMMARY:\"Task End : This is my task subject\"DESCRIPTION:\"This is my task description\"PRIORITY:55END:VEVENTEND:VCALENDAR", content.substring(content.length() - 131, content.length())); }
From source file:org.drools.task.service.IcalBaseTest.java
public void testSendWithStartDeadline() throws Exception { Map vars = new HashedMap(); vars.put("users", users); vars.put("groups", groups); vars.put("now", new Date()); String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, createdBy = users['tony'], activationTime = now}), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) {potentialOwners = [users['steve' ], users['tony' ]]}), "; str += "names = [ new I18NText( 'en-UK', 'This is my task name')],"; str += "subjects = [ new I18NText( 'en-UK', 'This is my task subject')],"; str += "descriptions = [ new I18NText( 'en-UK', 'This is my task description')],"; str += "deadlines = (with (new Deadlines() ) {"; str += " startDeadlines = [ "; str += " (with (new Deadline()) {"; str += " date = now"; str += " } ) ]"; str += "} ) })"; MockUserInfo userInfo = new MockUserInfo(); userInfo.getEmails().put(users.get("tony"), "tony@domain.com"); userInfo.getEmails().put(users.get("steve"), "steve@domain.com"); userInfo.getLanguages().put(users.get("tony"), "en-UK"); userInfo.getLanguages().put(users.get("steve"), "en-UK"); taskService.setUserinfo(userInfo);/*from ww w .ja v a 2 s .co m*/ BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler(); Task task = (Task) eval(new StringReader(str), vars); client.addTask(task, null, addTaskResponseHandler); long taskId = addTaskResponseHandler.getTaskId(); BlockingTaskOperationResponseHandler responseHandler = new BlockingTaskOperationResponseHandler(); client.claim(taskId, users.get("steve").getId(), responseHandler); responseHandler.waitTillDone(5000); assertEquals(1, getWiser().getMessages().size()); assertEquals("steve@domain.com", getWiser().getMessages().get(0).getEnvelopeReceiver()); String subject = "Summary\n-------\n\nThis is my task subject\n\n"; String description = "Description\n-----------\n\nThis is my task description"; MimeMessage msg = ((WiserMessage) getWiser().getMessages().get(0)).getMimeMessage(); assertEqualsIgnoreWhitespace("multipart/alternative;boundary=\"----=_Part_", msg.getContentType(), 0, 47); assertEquals("tony@domain.com", ((InternetAddress) msg.getFrom()[0]).getAddress()); assertEquals("tony@domain.com", ((InternetAddress) msg.getReplyTo()[0]).getAddress()); assertEquals("steve@domain.com", ((InternetAddress) msg.getRecipients(RecipientType.TO)[0]).getAddress()); assertEquals("Task Assignment Start Event: This is my task name", msg.getSubject()); MimeMultipart multiPart = (MimeMultipart) msg.getContent(); BodyPart messageBodyPart = multiPart.getBodyPart(0); assertEquals("text/plain; charset=UTF8;", messageBodyPart.getDataHandler().getContentType()); String content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace(subject + description, content); messageBodyPart = multiPart.getBodyPart(1); assertEquals("text/calendar; charset=UTF8; name=ical-Start-1.ics", messageBodyPart.getDataHandler().getContentType()); content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace( "BEGIN:VCALENDARPRODID:-//iCal4j 1.0//ENCALSCALE:GREGORIANVERSION:2.0METHOD:REQUESTBEGIN:VEVENTDTSTART;TZID=UTC:", content.substring(0, 123)); assertEqualsIgnoreWhitespace( "SUMMARY:\"Task Start : This is my task subject\"DESCRIPTION:\"This is my task description\"PRIORITY:55END:VEVENTEND:VCALENDAR", content.substring(content.length() - 131, content.length())); }
From source file:org.drools.task.service.IcalBaseTest.java
public void testSendWithEndDeadline() throws Exception { Map vars = new HashedMap(); vars.put("users", users); vars.put("groups", groups); vars.put("now", new Date()); String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { createdOn = now, createdBy = users['tony'], activationTime = now}), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) {potentialOwners = [users['steve' ], users['tony' ]]}), "; str += "names = [ new I18NText( 'en-UK', 'This is my task name')],"; str += "subjects = [ new I18NText( 'en-UK', 'This is my task subject')],"; str += "descriptions = [ new I18NText( 'en-UK', 'This is my task description')],"; str += "deadlines = (with (new Deadlines() ) {"; str += " endDeadlines = ["; str += " (with (new Deadline()) {"; str += " date = new Date( now.time + ( 1000 * 60 * 60 * 24 ) )"; // set to tomorrow str += " } ) ]"; str += "} ) })"; MockUserInfo userInfo = new MockUserInfo(); userInfo.getEmails().put(users.get("tony"), "tony@domain.com"); userInfo.getEmails().put(users.get("steve"), "steve@domain.com"); userInfo.getLanguages().put(users.get("tony"), "en-UK"); userInfo.getLanguages().put(users.get("steve"), "en-UK"); taskService.setUserinfo(userInfo);// www.ja v a2 s . c om BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler(); Task task = (Task) eval(new StringReader(str), vars); client.addTask(task, null, addTaskResponseHandler); long taskId = addTaskResponseHandler.getTaskId(); BlockingTaskOperationResponseHandler responseHandler = new BlockingTaskOperationResponseHandler(); client.claim(taskId, users.get("steve").getId(), responseHandler); responseHandler.waitTillDone(5000); assertEquals(1, getWiser().getMessages().size()); assertEquals("steve@domain.com", getWiser().getMessages().get(0).getEnvelopeReceiver()); String subject = "Summary\n-------\n\nThis is my task subject\n\n"; String description = "Description\n-----------\n\nThis is my task description"; MimeMessage msg = ((WiserMessage) getWiser().getMessages().get(0)).getMimeMessage(); assertEqualsIgnoreWhitespace("multipart/alternative;boundary=\"----=_Part_", msg.getContentType(), 0, 47); assertEquals("tony@domain.com", ((InternetAddress) msg.getFrom()[0]).getAddress()); assertEquals("tony@domain.com", ((InternetAddress) msg.getReplyTo()[0]).getAddress()); assertEquals("steve@domain.com", ((InternetAddress) msg.getRecipients(RecipientType.TO)[0]).getAddress()); assertEquals("Task Assignment End Event: This is my task name", msg.getSubject()); MimeMultipart multiPart = (MimeMultipart) msg.getContent(); BodyPart messageBodyPart = multiPart.getBodyPart(0); assertEquals("text/plain; charset=UTF8;", messageBodyPart.getDataHandler().getContentType()); String content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace(subject + description, content); messageBodyPart = multiPart.getBodyPart(1); assertEquals("text/calendar; charset=UTF8; name=ical-End-1.ics", messageBodyPart.getDataHandler().getContentType()); content = new String(getBytes(messageBodyPart.getDataHandler().getInputStream())); assertEqualsIgnoreWhitespace( "BEGIN:VCALENDARPRODID:-//iCal4j 1.0//ENCALSCALE:GREGORIANVERSION:2.0METHOD:REQUESTBEGIN:VEVENTDTSTART;TZID=UTC:", content.substring(0, 123)); assertEqualsIgnoreWhitespace( "SUMMARY:\"Task End : This is my task subject\"DESCRIPTION:\"This is my task description\"PRIORITY:55END:VEVENTEND:VCALENDAR", content.substring(content.length() - 131, content.length())); }
From source file:org.drools.task.service.TaskServiceDeadlinesBaseTest.java
public void testDelayedEmailNotificationOnDeadline() throws Exception { Map vars = new HashedMap(); vars.put("users", users); vars.put("groups", groups); vars.put("now", new Date()); DefaultEscalatedDeadlineHandler notificationHandler = new DefaultEscalatedDeadlineHandler(getConf()); WorkItemManager manager = new DefaultWorkItemManager(null); notificationHandler.setManager(manager); MockUserInfo userInfo = new MockUserInfo(); userInfo.getEmails().put(users.get("tony"), "tony@domain.com"); userInfo.getEmails().put(users.get("darth"), "darth@domain.com"); userInfo.getLanguages().put(users.get("tony"), "en-UK"); userInfo.getLanguages().put(users.get("darth"), "en-UK"); notificationHandler.setUserInfo(userInfo); taskService.setEscalatedDeadlineHandler(notificationHandler); String string = toString(/*w ww . ja va 2 s. c om*/ new InputStreamReader(getClass().getResourceAsStream("../DeadlineWithNotification.mvel"))); BlockingAddTaskResponseHandler addTaskResponseHandler = new BlockingAddTaskResponseHandler(); Task task = (Task) eval(new StringReader(string), vars); client.addTask(task, null, addTaskResponseHandler); long taskId = addTaskResponseHandler.getTaskId(); Content content = new Content(); content.setContent("['subject' : 'My Subject', 'body' : 'My Body']".getBytes()); BlockingSetContentResponseHandler setContentResponseHandler = new BlockingSetContentResponseHandler(); client.setDocumentContent(taskId, content, setContentResponseHandler); long contentId = setContentResponseHandler.getContentId(); BlockingGetContentResponseHandler getResponseHandler = new BlockingGetContentResponseHandler(); client.getContent(contentId, getResponseHandler); content = getResponseHandler.getContent(); assertEquals("['subject' : 'My Subject', 'body' : 'My Body']", new String(content.getContent())); // emails should not be set yet assertEquals(0, getWiser().getMessages().size()); Thread.sleep(100); // nor yet assertEquals(0, getWiser().getMessages().size()); long time = 0; while (getWiser().getMessages().size() != 2 && time < 15000) { Thread.sleep(500); time += 500; } // 1 email with two recipients should now exist assertEquals(2, getWiser().getMessages().size()); List<String> list = new ArrayList<String>(2); list.add(getWiser().getMessages().get(0).getEnvelopeReceiver()); list.add(getWiser().getMessages().get(1).getEnvelopeReceiver()); assertTrue(list.contains("tony@domain.com")); assertTrue(list.contains("darth@domain.com")); MimeMessage msg = ((WiserMessage) getWiser().getMessages().get(0)).getMimeMessage(); assertEquals("My Body", msg.getContent()); assertEquals("My Subject", msg.getSubject()); assertEquals("from@domain.com", ((InternetAddress) msg.getFrom()[0]).getAddress()); assertEquals("replyTo@domain.com", ((InternetAddress) msg.getReplyTo()[0]).getAddress()); assertEquals("tony@domain.com", ((InternetAddress) msg.getRecipients(RecipientType.TO)[0]).getAddress()); assertEquals("darth@domain.com", ((InternetAddress) msg.getRecipients(RecipientType.TO)[1]).getAddress()); }
From source file:org.elasticsearch.river.email.EmailToJson.java
public static String getSubject(MimeMessage msg) throws UnsupportedEncodingException, MessagingException { return MimeUtility.decodeText(msg.getSubject()); }
From source file:org.jasig.portal.portlets.account.UserAccountHelper.java
public void sendLoginToken(HttpServletRequest request, ILocalAccountPerson account) { IPerson person = personManager.getPerson(request); final Locale[] userLocales = localeStore.getUserLocales(person); LocaleManager localeManager = new LocaleManager(person, userLocales); Locale locale = localeManager.getLocales()[0]; IPortalUrlBuilder builder = urlProvider.getPortalUrlBuilderByPortletFName(request, "reset-password", UrlType.RENDER);//from w w w. jav a2s .com IPortletUrlBuilder portletUrlBuilder = builder.getTargetedPortletUrlBuilder(); portletUrlBuilder.addParameter("username", account.getName()); portletUrlBuilder.addParameter("loginToken", (String) account.getAttributeValue("loginToken")); portletUrlBuilder.setPortletMode(PortletMode.VIEW); portletUrlBuilder.setWindowState(WindowState.MAXIMIZED); StringBuffer url = new StringBuffer(); url.append(request.getScheme()); url.append("://").append(request.getServerName()); int port = request.getServerPort(); if (port != 80 && port != 443) { url.append(":").append(port); } url.append(builder.getUrlString()); log.debug("Sending password reset instructions to user with url " + url.toString()); String emailAddress = (String) account.getAttributeValue("mail"); final STGroup group = new STGroupDir(templateDir, '$', '$'); final ST template = group.getInstanceOf(passwordResetTemplate); template.add("displayName", person.getAttribute("displayName")); template.add("url", url.toString()); MimeMessage message = mailSender.createMimeMessage(); String body = template.render(); try { MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setTo(emailAddress); helper.setText(body, true); helper.setSubject(messageSource.getMessage("reset.your.password", new Object[] {}, locale)); helper.setFrom(portalEmailAddress, messageSource.getMessage("portal.name", new Object[] {}, locale)); log.debug("Sending message to " + emailAddress + " from " + Arrays.toString(message.getFrom()) + " subject " + message.getSubject()); this.mailSender.send(message); } catch (MailException e) { log.error("Unable to send password reset email ", e); } catch (MessagingException e) { log.error("Unable to send password reset email ", e); } catch (UnsupportedEncodingException e) { log.error("Unable to send password reset email ", e); } }
From source file:org.mobicents.servlet.restcomm.email.EmailServiceTest.java
@Test public void testSendEmail() { new JavaTestKit(system) { {/*from w ww. j av a 2 s . c o m*/ final ActorRef observer = getRef(); // Send the email. final Mail emailMsg = new Mail("hascode@localhost", "someone@localhost.com", "Testing Email Service", "This is the subject of the email service testing", "someone2@localhost.com, test@localhost.com, test3@localhost.com", "someone3@localhost.com, test2@localhost.com"); emailService.tell(new EmailRequest(emailMsg), observer); final EmailResponse response = expectMsgClass(FiniteDuration.create(60, TimeUnit.SECONDS), EmailResponse.class); assertTrue(response.succeeded()); // fetch messages from server MimeMessage[] messages = mailServer.getReceivedMessages(); assertNotNull(messages); assertEquals(6, messages.length); MimeMessage m = messages[0]; try { assertEquals(emailMsg.subject(), m.getSubject()); assertTrue(String.valueOf(m.getContent()).contains(emailMsg.body())); assertEquals(emailMsg.from(), m.getFrom()[0].toString()); } catch (Exception e) { assertTrue(false); } } }; }