Search in sources :

Example 6 with InternetAddress

use of javax.mail.internet.InternetAddress in project camel by apache.

the class MailSearchTermUriConfigLast24HoursTest method prepareMailbox.

private void prepareMailbox() throws Exception {
    // connect to mailbox
    Mailbox.clearAll();
    JavaMailSender sender = new DefaultJavaMailSender();
    Store store = sender.getSession().getStore("pop3");
    store.connect("localhost", 25, "bill", "secret");
    Folder folder = store.getFolder("INBOX");
    folder.open(Folder.READ_WRITE);
    folder.expunge();
    long twoDaysAgo = new Date().getTime() - 2 * 24 * 60 * 60 * 1000L;
    long twentyHoursAgo = new Date().getTime() - 1 * 20 * 60 * 60 * 1000L;
    long oneHourAgo = new Date().getTime() - 1 * 1 * 60 * 60 * 1000L;
    // inserts 5 new messages
    Message[] messages = new Message[6];
    messages[0] = new MimeMessage(sender.getSession());
    messages[0].setSubject("Apache Camel rocks");
    messages[0].setText("I like riding the Camel");
    messages[0].setHeader("Message-ID", "0");
    messages[0].setFrom(new InternetAddress("someone@somewhere.com"));
    messages[0].setSentDate(new Date(twoDaysAgo));
    messages[1] = new MimeMessage(sender.getSession());
    messages[1].setSubject("Order");
    messages[1].setText("Ordering Camel in Action");
    messages[1].setFrom(new InternetAddress("dude@somewhere.com"));
    messages[1].setHeader("Message-ID", "1");
    messages[1].setSentDate(new Date(twoDaysAgo));
    messages[2] = new MimeMessage(sender.getSession());
    messages[2].setSubject("Order");
    messages[2].setText("Ordering ActiveMQ in Action");
    messages[2].setHeader("Message-ID", "2");
    messages[2].setFrom(new InternetAddress("dude@somewhere.com"));
    messages[2].setSentDate(new Date(twentyHoursAgo));
    messages[3] = new MimeMessage(sender.getSession());
    messages[3].setSubject("Buy pharmacy");
    messages[3].setText("This is spam");
    messages[3].setHeader("Message-ID", "3");
    messages[3].setFrom(new InternetAddress("spam@me.com"));
    messages[3].setSentDate(new Date(twentyHoursAgo));
    messages[4] = new MimeMessage(sender.getSession());
    messages[4].setSubject("Beers tonight?");
    messages[4].setText("We meet at 7pm the usual place");
    messages[4].setHeader("Message-ID", "4");
    messages[4].setFrom(new InternetAddress("barney@simpsons.com"));
    messages[4].setSentDate(new Date(oneHourAgo));
    messages[5] = new MimeMessage(sender.getSession());
    messages[5].setSubject("Spambot attack");
    messages[5].setText("I am attaching you");
    messages[5].setHeader("Message-ID", "5");
    messages[5].setFrom(new InternetAddress("spambot@me.com"));
    messages[5].setSentDate(new Date());
    messages[5].setSentDate(new Date(oneHourAgo));
    folder.appendMessages(messages);
    folder.close(true);
}
Also used : InternetAddress(javax.mail.internet.InternetAddress) Message(javax.mail.Message) MimeMessage(javax.mail.internet.MimeMessage) MimeMessage(javax.mail.internet.MimeMessage) Store(javax.mail.Store) Folder(javax.mail.Folder) Date(java.util.Date)

Example 7 with InternetAddress

use of javax.mail.internet.InternetAddress in project camel by apache.

the class MultipleDestinationConsumeTest method testSendAndReceiveMails.

@Test
public void testSendAndReceiveMails() throws Exception {
    Mailbox.clearAll();
    MockEndpoint resultEndpoint = getMockEndpoint("mock:result");
    resultEndpoint.expectedMinimumMessageCount(1);
    MimeMessage message = new MimeMessage(mailSession);
    message.setText(body);
    message.setRecipients(Message.RecipientType.TO, new Address[] { new InternetAddress("james@localhost"), new InternetAddress("bar@localhost") });
    Transport.send(message);
    // lets test the receive worked
    resultEndpoint.assertIsSatisfied(100000);
    Exchange exchange = resultEndpoint.getReceivedExchanges().get(0);
    org.apache.camel.Message in = exchange.getIn();
    assertNotNull("Should have headers", in.getHeaders());
    MailMessage msg = (MailMessage) exchange.getIn();
    Message inMessage = msg != null ? msg.getMessage() : null;
    assertNotNull("In message has no JavaMail message!", inMessage);
    String text = in.getBody(String.class);
    assertEquals("mail body", body, text);
    // need to use iterator as some mail impl returns String[] and others a single String with comma as separator
    // so we let Camel create an iterator so we can use the same code for the test
    Object to = in.getHeader("TO");
    Iterator<String> it = CastUtils.cast(ObjectHelper.createIterator(to));
    int i = 0;
    while (it.hasNext()) {
        if (i == 0) {
            assertEquals("james@localhost", it.next().trim());
        } else {
            assertEquals("bar@localhost", it.next().trim());
        }
        i++;
    }
    Enumeration<Header> iter = CastUtils.cast(inMessage.getAllHeaders());
    while (iter.hasMoreElements()) {
        Header header = iter.nextElement();
        String[] value = message.getHeader(header.getName());
        log.debug("Header: " + header.getName() + " has value: " + ObjectHelper.asString(value));
    }
}
Also used : InternetAddress(javax.mail.internet.InternetAddress) Message(javax.mail.Message) MimeMessage(javax.mail.internet.MimeMessage) MockEndpoint(org.apache.camel.component.mock.MockEndpoint) MockEndpoint(org.apache.camel.component.mock.MockEndpoint) Exchange(org.apache.camel.Exchange) Header(javax.mail.Header) MimeMessage(javax.mail.internet.MimeMessage) Test(org.junit.Test)

Example 8 with InternetAddress

use of javax.mail.internet.InternetAddress in project camel by apache.

the class MailMessageTest method testMailMessageHandlesSingleHeader.

@Test
public void testMailMessageHandlesSingleHeader() throws Exception {
    mimeMessage.setRecipients(Message.RecipientType.TO, new Address[] { new InternetAddress("frank@localhost") });
    Exchange exchange = endpoint.createExchange(mimeMessage);
    MailMessage in = (MailMessage) exchange.getIn();
    assertNotNull(in);
    Object header = in.getHeader("TO");
    String value = assertIsInstanceOf(String.class, header);
    assertEquals("value", "frank@localhost", value);
    assertEquals("body", body, in.getBody());
}
Also used : Exchange(org.apache.camel.Exchange) InternetAddress(javax.mail.internet.InternetAddress) Test(org.junit.Test)

Example 9 with InternetAddress

use of javax.mail.internet.InternetAddress in project remusic by aa112901.

the class CommonUtils method sendTextMail.

/**
     * 以文本格式发送邮件
     * @param title 待发送的邮件的信息
     */
public static boolean sendTextMail(String title, String content) {
    try {
        Properties props = System.getProperties();
        props.put("mail.smtp.host", "smtp.163.com");
        props.put("mail.smtp.auth", "true");
        Session session = Session.getInstance(props, null);
        Transport transport = session.getTransport("smtp");
        transport.connect("smtp.163.com", 25, "remusic_log@163.com", "remusiclog1");
        Message mailMessage = new SMTPMessage(session);
        Address from = new InternetAddress("remusic_log@163.com");
        mailMessage.setFrom(from);
        Address to = new InternetAddress("remusic_log@163.com");
        mailMessage.setRecipient(Message.RecipientType.TO, to);
        mailMessage.setSubject(title);
        mailMessage.setSentDate(new Date());
        mailMessage.setText(content);
        transport.sendMessage(mailMessage, mailMessage.getAllRecipients());
        return true;
    } catch (MessagingException ex) {
        ex.printStackTrace();
    }
    return false;
}
Also used : SMTPMessage(com.sun.mail.smtp.SMTPMessage) InternetAddress(javax.mail.internet.InternetAddress) Message(javax.mail.Message) SMTPMessage(com.sun.mail.smtp.SMTPMessage) Address(javax.mail.Address) InternetAddress(javax.mail.internet.InternetAddress) MessagingException(javax.mail.MessagingException) Properties(java.util.Properties) Transport(javax.mail.Transport) Date(java.util.Date) Session(javax.mail.Session)

Example 10 with InternetAddress

use of javax.mail.internet.InternetAddress in project javaee7-samples by javaee-samples.

the class AnnotatedEmailServlet method processRequest.

/**
     * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
     * methods.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    try (PrintWriter out = response.getWriter()) {
        out.println("<!DOCTYPE html>");
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Sending email using @MailSessionDefinition</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Sending email using @MailSessionDefinition</h1>");
        try {
            out.println("Sending message from \"" + creds.getFrom() + "\" to \"" + creds.getTo() + "\"...<br>");
            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress(creds.getFrom()));
            message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(creds.getTo()));
            message.setSubject("Sending message using Annotated JavaMail " + Calendar.getInstance().getTime());
            message.setText("Java EE 7 is cool!");
            Transport t = session.getTransport();
            t.connect(creds.getFrom(), creds.getPassword());
            t.sendMessage(message, message.getAllRecipients());
            out.println("message sent!");
        } catch (MessagingException e) {
            throw new RuntimeException(e);
        }
        out.println("</body>");
        out.println("</html>");
    }
}
Also used : InternetAddress(javax.mail.internet.InternetAddress) Message(javax.mail.Message) MimeMessage(javax.mail.internet.MimeMessage) MimeMessage(javax.mail.internet.MimeMessage) MessagingException(javax.mail.MessagingException) Transport(javax.mail.Transport) PrintWriter(java.io.PrintWriter)

Aggregations

InternetAddress (javax.mail.internet.InternetAddress)255 MimeMessage (javax.mail.internet.MimeMessage)106 MessagingException (javax.mail.MessagingException)69 Session (javax.mail.Session)49 Properties (java.util.Properties)45 ArrayList (java.util.ArrayList)42 Address (javax.mail.Address)41 Message (javax.mail.Message)40 Date (java.util.Date)38 JavaMailInternetAddress (com.zimbra.common.mime.shim.JavaMailInternetAddress)36 AddressException (javax.mail.internet.AddressException)34 X509Certificate (java.security.cert.X509Certificate)32 MimeBodyPart (javax.mail.internet.MimeBodyPart)30 Test (org.junit.Test)29 IOException (java.io.IOException)26 MimeMultipart (javax.mail.internet.MimeMultipart)26 PolicyExpression (org.nhindirect.policy.PolicyExpression)18 HashMap (java.util.HashMap)17 CertificateResolver (org.nhindirect.stagent.cert.CertificateResolver)17 PolicyResolver (org.nhindirect.stagent.policy.PolicyResolver)17