20.3. Configuration
Include
jboss-seam-mail.jar
in your WEB-INF/lib
directory to include email support in your application. If you use JBoss Enterprise Application Platform, no further configuration is required. If you do not use EAP, make sure you have the JavaMail API and a copy of the Java Active Framework. The versions distributed with Seam are lib/mail.jar
and lib/activation.jar
respectively.)
Note
The Seam Mail module requires both the use of the
seam-ui
package, and that Facelets be used as the view technology. Future versions of the library may also support the use of JSP.
The
mailSession
component uses JavaMail to talk to a 'real' SMTP server.
20.3.1. mailSession
If you are working in a Java EE 5 environment, a JavaMail session may be available through a JNDI look up. Otherwise, you can use a Seam-configured session.
The
mailSession
component's properties are described in more detail in Section 30.9, “Mail-related components”.
20.3.1.1. JNDI look up in EAP
The JBossAS
deploy/mail-service.xml
configures a JavaMail session binding into JNDI. The default service configuration must be altered for your network. http://wiki.jboss. org/wiki/Wiki.jsp?page=JavaMail describes the service in more detail.
<components xmlns="http://jboss.com/products/seam/components" xmlns:core="http://jboss.com/products/seam/core" xmlns:mail="http://jboss.com/products/seam/mail"> <mail:mail-session session-jndi-name="java:/Mail"/> </components>
Here, we tell Seam to retrieve the mail session bound to
java:/Mail
from JNDI.
20.3.1.2. Seam-configured Session
A mail session can be configured via
components.xml
. Here we tell Seam to use smtp.example.com
as the SMTP server:
<components xmlns="http://jboss.com/products/seam/components" xmlns:core="http://jboss.com/products/seam/core" xmlns:mail="http://jboss.com/products/seam/mail"> <mail:mail-session host="smtp.example.com"/> </components>