[prev in list] [next in list] [prev in thread] [next in thread] 

List:       jakarta-commons-dev
Subject:    [jira] Resolved: (EMAIL-72) sending several emails in a batch
From:       "Siegfried Goeschl (JIRA)" <jira () apache ! org>
Date:       2010-10-31 21:45:24
Message-ID: 836837.165711288561524455.JavaMail.jira () thor
[Download RAW message or body]


     [ https://issues.apache.org/jira/browse/EMAIL-72?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel \
]

Siegfried Goeschl resolved EMAIL-72.
------------------------------------

    Resolution: Won't Fix

IMHO providing a production ready batch mailer is beyond the scope of this library. I \
added EmailLiveTest.testSendingEmailsInBatch() to demonstrate how batch sending can \
be done using commons-email.

> sending several emails in a batch
> ---------------------------------
> 
> Key: EMAIL-72
> URL: https://issues.apache.org/jira/browse/EMAIL-72
> Project: Commons Email
> Issue Type: New Feature
> Environment: any
> Reporter: Hao Zheng
> Attachments: DemoMailer.java
> 
> 
> I found when i want to send several emails in one connection, Commons Email doesn't \
> help. It connects to the SMTP server per email, and it spends more time on \
> connecting and authentication than sending the mails themselve (most SMTP server \
> needs authentication). So I have to code on the javamail api directly, something \
> like: SMTPSSLTransport strans = (SMTPSSLTransport) sess.getTransport();
> strans.connect();
> int num = 1000;
> for (int i = 0; i < num; i++) {
> SMTPMessage email = createMessage(sess, num);
> strans.sendMessage(email, email.getAllRecipients());
> }
> strans.close();
> In my straightforward test, it saves me 2/3 of the time. So I think it would be \
> nice to add this kind of function into Commons Email, to make it more useful. My \
> suggestion is to extract a cleaner Email bean, which contains all email dependent \
> information, e.g. TO, CC, Subject, etc, but leaves out all host/server dependent \
> information, e.g. authenticator, host address, host port, etc. After that, we can \
> still provide simple convenience method for those who only want to send one mail \
> every time. And it is possible to add methods like 'addEmail' to add several mails \
> before sending, and later on, when it is called 'send', we can send them in one \
> SMTP connection. It's much like the API of javamail itself, but we can provide more \
> convenient usage than it. Code will look like this: EmailTransmission trans = new \
> EmailTransmission(); trans.setHostName("smtp.myserver.org");
> HtmlEmail email1 = new HtmlEmail();
> ...
> HtmlEmail email2 = new HtmlEmail();
> ...
> trans.addEmail(email1);
> trans.addEmail(email2);
> ..
> trans.send();

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic