Class MailSessionFactory

java.lang.Object
org.apache.naming.factory.MailSessionFactory
All Implemented Interfaces:
ObjectFactory

public class MailSessionFactory extends Object implements ObjectFactory

Factory class that creates a JNDI named JavaMail Session factory, which can be used for managing inbound and outbound electronic mail messages via JavaMail APIs. All messaging environment properties described in the JavaMail Specification may be passed to the Session factory; however the following properties are the most commonly used:

  • mail.smtp.host - Hostname for outbound transport connections. Defaults to localhost if not specified.

This factory can be configured in a <Context> element in your conf/server.xml configuration file. An example of factory configuration is:

<Resource name="mail/smtp"
          auth="CONTAINER"
          type="jakarta.mail.Session"
          mail.smtp.host="mail.mycompany.com"
          />
  • Field Details

    • factoryType

      protected static final String factoryType
      The Java type for which this factory knows how to create objects.
      See Also:
  • Constructor Details

    • MailSessionFactory

      public MailSessionFactory()
      Default constructor.
  • Method Details

    • getObjectInstance

      public Object getObjectInstance(Object refObj, Name name, Context context, Hashtable<?,?> env) throws Exception
      Create a new resource instance.

      The password attribute is only used when mail.smtp.user or mail.user is also configured; a password without a user is ignored.

      Specified by:
      getObjectInstance in interface ObjectFactory
      Parameters:
      refObj - The reference object describing the Session
      name - the bound name
      context - unused
      env - unused
      Returns:
      the object instance
      Throws:
      Exception - if an error occurs creating the instance