Package javax.mail

## Annotation Type MailSessionDefinition

    @Target(TYPE)
    @Retention(RUNTIME)
    @Repeatable(MailSessionDefinitions.class)
    public @interface MailSessionDefinition

Annotation used by Java EE applications to define a `MailSession` to be registered with JNDI. The `MailSession` may be configured by setting the annotation elements for commonly used `Session` properties. Additional standard and vendor-specific properties may be specified using the `properties` element.

The session will be registered under the name specified in the `name` element. It may be defined to be in any valid `Java EE` namespace, and will determine the accessibility of the session from other components.

Since:
  JavaMail 1.5

### Required Element Summary

Required Elements
`java.lang.String` `name` JNDI name by which the mail session will be registered.

### Optional Element Summary

Optional Elements
`java.lang.String` `description` Description of this mail session.
`java.lang.String` `from` From address for the user.
`java.lang.String` `host` Host name for the mail server.
`java.lang.String` `password` Password to use for authentication.
`java.lang.String[]` `properties` Properties to include in the Session.
`java.lang.String` `storeProtocol` Store protocol name.
`java.lang.String` `transportProtocol` Transport protocol name.
`java.lang.String` `user` User name to use for authentication.

### Element Detail

#### name

    java.lang.String name

JNDI name by which the mail session will be registered.

Returns:
  the JNDI name

#### description

    java.lang.String description

Description of this mail session.

Returns:
  the description

Default:
  ""

#### storeProtocol

    java.lang.String storeProtocol

Store protocol name.

Returns:
  the store protocol name

Default:
  ""

#### transportProtocol

    java.lang.String transportProtocol

Transport protocol name.

Returns:
  the transport protocol name

Default:
  ""

#### host

    java.lang.String host

Host name for the mail server.

Returns:
  the host name

Default:
  ""

#### user

    java.lang.String user

User name to use for authentication.

Returns:
  the user name

Default:
  ""

#### password

    java.lang.String password

Password to use for authentication.

Returns:
  the password

Default:
  ""

#### from

    java.lang.String from

From address for the user.

Returns:
  the from address

Default:
  ""

#### properties

    java.lang.String[] properties

Properties to include in the Session. Properties are specified using the format: propertyName=propertyValue with one property per array element.

Returns:
  the properties

Default:
  {}