[frs-247] FusionReactor Mail – Startup Requirements on Jetty 7.x and 8.x

Problem

On Jetty 7 and 8, you may see the following exception either during startup of FusionReactor, or at some point during the session:

java.lang.NoClassDefFoundError: javax/mail/Authenticator

Analysis

FusionReactor requires JavaMail and to be installed in the J2EE container. Additionally, Java Mail depends on the Java Activation Framework. We are not able to supply these dependencies ourselves as it may interfere with installed webapps.

Jetty does supply both of these dependencies but they need to be turned on. The dependencies are realized in jars javax.mail.glassfish_1.4.1.v*.jar and javax.activation_1.1.0.v*.jar, both supplied as part of the Jetty JNDI option, installed by default but not activated.

Solution

The Jetty Start Options used to activate this assembly are either:

  • plus, or
  • All

Therefore, starting with either of these options enabled in Jetty will resolve the exception.

Example

Using the "plus" option to include the JNDI packages (Java Mail and Java Activation Framework):

java -jar start.jar OPTIONS=plus

Versions Tested

Solution tested under

  • jetty-distribution-7.3.1.v20110307
  • jetty-distribution-8.0.0.M2

Issue Details

Type: Technote
Issue Number: FRS-247
Components: Crash Protection, Logging
Environment:
Resolution: Fixed
Last Updated: 25/Mar/11 11:43 AM
Affects Version: 3.5.5, 4.0.0
Fixed Version: 4.0.0
Server: Jetty
Platform:
Related Issues:

Comments are closed.