Once you have configured your mail server as described below, Crowd can send email notifications to users at specific events, such as when a user requests a password reset or a server event occurs.
On this page:
Accessing the Mail Configuration Screen
To configure SMTP email,
- Log in to the Crowd Administration Console.
- Click the 'Administration' tab in the top navigation bar.
- Click 'Mail Configuration' in the left-hand menu.
- The 'Mail Configuration' screen allows you to choose between an SMTP and a JNDI mail server. Enter the details of your mail server as described below, then click the 'Update' button.
Mail Server Option 1: SMTP
Enter the details as follows:
- Notification Email Address — The email address which will receive notifications about server events. For example, Crowd will send an email message to this address when the number of users approaches the license limit.
- From Email Address — Crowd will add this email address as the 'sender' on the emails generated by Crowd and sent to users.
- Subject Prefix — The prefix which will appear at the start of the email subject, for all emails generated by Crowd. This can be useful for email client programs that offer filtering rules.
- Mail Server Type — Select the 'SMTP Server' radio button.
- SMTP Host — The hostname of the SMTP mail server, e.g. 'localhost' or 'smtp.acme.com'.
- SMTP Port — The port on which the SMTP mail server listens. The default is '25'.
- Username — The username that your Crowd server will use when it logs in to your mail server.
- Password — The password that your Crowd server will use when it logs in to your mail server.
- Use Secure Sockets Layer (SSL) — Select this check-box if you want to access your mail server over SSL (Secure Sockets Layer). This ensures that all email communications between Crowd and your mail server are encrypted, provided your mail server supports SSL.
Additionally, as you are connecting to an SSL service, you will need to import the SMTP server certificate into a Java keystore. The process is described in Configuring Crowd to Work with SSL.
Mail Server Option 2: JNDI Location
Select the 'JNDI Location' if you want to connect to a mail server via a datasource managed by your application server.
Enter the details as follows:
- Notification Email Address — The email address which will receive notifications about server events.
- From Email Address — Crowd will add this email address as the 'sender' on the emails generated by Crowd and sent to users.
- Subject Prefix — The prefix which will appear at the start of the email subject, for all emails generated by Crowd. This can be useful for email client programs that offer filtering rules.
- Mail Server Type — Select the 'JNDI Location' radio button.
- JNDI Location — The datasource name of a
javax.mail.Session
object which has been set up by your application server.
Configuring the JNDI Resource
For example, in Tomcat 5.5 (the default application server that is bundled with the Crowd distribution (not EAR-WAR)), your JNDI location would be java:comp/env/mail/CrowdMailServer
, and you would add the following section in conf/server.xml
or conf/Catalina/localhost/crowd.xml
, inside the <Context>
node:
<Context path="/crowd" docBase="${CATALINA_HOME}/crowd-webapp" reloadable="false"> <Resource name="mail/CrowdMailServer" auth="Container" type="javax.mail.Session" mail.smtp.host="yourmailserver.example.com" mail.smtp.port="25" mail.transport.protocol="smtp" mail.smtp.auth="true" mail.smtp.user="your_userid" password="your_password" /> </Context>
If you have problems connecting, add a mail.debug="true"
parameter, which will let you see SMTP-level details when testing the connection.
You will also need to ensure that the JavaMail classes and Java Beans Activation Framework are present in your application server's classpath.
If JavaMail is not present in your application server installation, you will receive the following error in your log file:
java.lang.NoClassDefFoundError: javax/mail/Authenticator
If the Activation Framework is not present in your application server installation, you will receive the following error in your log file:
java.lang.NoClassDefFoundError: javax/activation/DataSource
Notes
- To customise the password notification message, see the page about email notification templates.