| Commons Email Package |
| Version 1.3 |
| Release Notes |
| |
| INTRODUCTION: |
| ------------- |
| |
| Commons Email aims to provide a API for sending email. It builds on the JavaMail |
| API with the aim of presenting a simplified API which is easy for developers who |
| are not mail experts to use. It is a compact component with a small number of |
| classes. |
| |
| The Commons Email website is the source for the most recent information, |
| downloads, reports, and bug status: |
| |
| http://commons.apache.org/email/ |
| |
| This is a maintenance release which fixes several bugs present in the 1.2 |
| release and adds a number of small enhancements requested by |
| users. All current users are encouraged to upgrade. |
| |
| CHANGES FROM 1.2: |
| ----------------- |
| |
| == New Features == |
| |
| * HtmlmageEmail should support class path resources |
| Issue: EMAIL-108. Thanks to Elisabeth Kasimir, Alexander Kasimir. |
| |
| * Added a MultiPartEmail.attach(File) method since attaching a file is a simple and common. |
| |
| * Added MimeMessageParser and MimeMessageUtils. |
| |
| == Fixed Bugs == |
| |
| * Added mime.types to META-INF - the definition is actually found in activation.jar |
| but did not work. Issue: EMAIL-107. Thanks to Claus Polanka, Michael Jakl. |
| |
| * STARTTLS can be used even without authenticator. Issue: EMAIL-106. Thanks to Bruno Harbulot. |
| |
| * Clarified the meaning of setTLS() which actually sends a "STARTTLS" command from the |
| client to the SMTP server. Please note that some "protected" variables were renamed |
| which could break existing code. Issue: EMAIL-105. Thanks to Bruno Harbulot. |
| |
| * Fixed HtmlEmail embed toLowerCase bug with Turkish locale. Issue: EMAIL-102. Thanks to Okan Özeren. |
| |
| * Specified Content-ID is now used when embedding a File object in an HtmlEmail. |
| Issue: EMAIL-101. Thanks to Andrew Starodub. |
| |
| * Restore Java 1.4 compatibility. |
| |
| * Throwing an IllegalStateException when setting mail session properties for an already |
| created mail session because the settings would be ignored. Please note that this |
| change could potentially break existing (but invalid) code. Issue: EMAIL-96. |
| |
| * Encoding and folding of headers is now done by commons-email. Issue: EMAIL-98. Thanks to Mario Daepp. |
| |
| * The default connection timeout is set to a reasonable default value of 60 seconds. Issue: EMAIL-100. Thanks to David Parks. |
| |
| * Moving the various constants from 'EMail' to 'EmailConstants' |
| |
| * All setters are returning "this" to simplify building an email. Issue: EMAIL-76. Thanks to Yu Kobayashi. |
| |
| * Adding ImageHtmlEmail to create HTML emails with embedded images either |
| downloaded from HTTP or from the local file system. Issue: EMAIL-92. Thanks to Dominik Stadler. |
| |
| * Calling buildMimeMessage() before invoking send() caused |
| duplicated mime parts for HtmlEmail. The implementation now enforces |
| that an email can be only used once and throw an exception when |
| multiple invocations of buildMimeMessage() are detected. Issue: EMAIL-95. |
| |
| * Incorrect SMTP Port number shown in error message when an email fails |
| to send due to a blocked port and SSL is used. Issue: EMAIL-91. Thanks to Kevin Lester. |
| |
| |
| CHANGES FROM 1.1: |
| ----------------- |
| |
| == Compatibility == |
| |
| * Java 1.4 or later is now required. Earlier versions are no longer |
| supported by Sun. |
| |
| * JavaMail 1.4 or later and JavaBeans Activation Framework 1.1 or later are now |
| required. |
| |
| == New Features == |
| |
| * Email.setFrom and Email.addTo are using Email.charset to properly encode |
| the name. |
| |
| * SimpleEmail#setMsg() with UTF-8 content honors correct charset in header |
| and does encode the content correctly now. |
| |
| * Created additional methods to support timeouts. |
| |
| * Create an overridable method in Email.java to create the MimeMessage instance. |
| |
| * Add getTo and getReplyTo to Email class. |
| |
| == Fixed Bugs == |
| |
| * If setHostName() has not been called, getHostName() tries to return |
| this.session.getProperty(MAIL_HOST). If mail session has not been |
| created yet, this will throw a NullPointerException. Now getHostName() |
| checks that this.session is not null before trying to access it. |
| |
| * Provide better diagnostics when attaching documents fail. |
| |
| * When mail authentication is required and no username/password is supplied |
| than the provided mail session is used. If a username/password is found |
| the implementation creates a new mail session and a DefaultAuthenticator |
| as convinence implementation. |
| |
| * Using Kenneth's implementation of HtmlEmail.buildMimeMessage() to fix a |
| couple of HtmlEmail layout issues. Also thanks to Martin Lau and Morten |
| Hattesen for providing in-depth analysis of the problem. |
| |
| * During regression tests write out the generated MimeMessage instead of |
| WiserEmail.toString(). |
| |
| |
| REQUIREMENTS: |
| |
| J2SE environments |
| ----------------- |
| |
| Commons Email requires JavaMail 1.4.1 or later. The Sun implementation |
| is available at: |
| |
| http://java.sun.com/products/javamail/ |
| |
| However, the Apache Geronimo project (http://geronimo.apache.org) |
| provides a J2EE-certified implementation of the JavaMail 1.4 |
| specification licensed under the Apache Software License. |
| |
| Commons Email also requires the JavaBeans Activation Framework unless |
| you are runnning on Java SE 6 or later. The Sun implementation is available |
| at: |
| |
| http://java.sun.com/javase/technologies/desktop/javabeans/jaf/ |
| |
| Apache Geronimo likewise provides an implementation under the Apache |
| Software License. |
| |
| Commons Email has been tested with JDK 1.4, 1.5 and 1.6 |
| |
| J2EE environments |
| ----------------- |
| |
| Commons Email is compatible with all certified Java Enterprise Edition |
| 5 implementations; no further dependencies are required. |
| |
| Java 2 Enterprise Edition 1.4 users must ensure that the versions of |
| JavaMail and JAF indicated above are available to their applications; |
| the J2EE 1.4 specification only requires earlier versions. |
| |
| Earlier versions of J2EE are not supported. |