Global Server Configuration
There are a number of global configuration blocks that do not fall into any one
component. They have effects that are global in scope across the server. Some of
these blocks are crucial, while others can be ignored by any but the most sophisticated
server administrators.
The James Block
This configuration block is defined by the James tag. All administrators
need to adjust this configuration block upon installation. It no attributes, but several
children, all of which are required.
- postmaster - the body of this element is the address that the server
will consider its postmaster address. This address will be listed as the sender address
of all error messages that originate from James. Also, all messages addressed to
postmaster@<servername>, where <servername> is one of the domain names whose
mail is being handled by James, will be redirected to this email address.
- usernames - this element has no body, but instead has three required
boolean attributes. These are ignoreCase, enabledAliases,
and enableForwarding. The first of these determines whether email user names
will be treated as case-insensitive or not. The second attribute configures whether local user
aliasing will be enabled. Finally, the value of the third attribute determines whether forwarding
to potentially remote users will be enabled.
- servernames - this element determines exactly which mail domains and IP
addresses the server will treat as local. It has two boolean attributes -
autodetect and autodetectIP. The first attribute, if true,
causes the server to attempt to determine its own host name and add that to the list of local
mail domains. The second attribute causes the server to attempt to determine its own IP
address and add it to the list of local mail domains. In addition to these attributes, this
tag has zero or more servername children.
- servername - a single host name or IP address that should be added to the list of
mail domains that the server considers local.
- inboxRepository - This is a simple container tag which contains a single child element.
- repository - this defines the mail repository that will be used to store
mail delivered locally. This element has no body. The required attribute type
is always set to "MAIL". The required attribute repositoryURL addresses the
repository as described in the repository configuration section.
The Connectionmanager Block
This block controls general connection management. There are two elements.
- idle-timeout - the number of milliseconds that it will take for idle
client connections managed by this connection manager to be marked at timed out. If no
value is specified, the value defaults to 5 minutes, 300000 milliseconds. A value of 0
means that client sockets will not timeout.
- max-connections - The max-connections parameter specifies the default
maximum number of client connections that this connection manager will allow per managed
server socket. This value can be overridden by each individual service. If no value is
specified, the value defaults to 30. A value of 0 means that there is no limit imposed
by the connection manager, although resource limitations imposed by other components
(i.e. max # of threads) may serve to limit the number of open connections.
The Objectstorage Block
This block controls the low level file repository to file mapping. There is no need to modify this.
The Socketmanager Block
This block controls the socket types available inside James. Unless you are intending to enable SSL, it
shouldn't be necessary for you to adjust this block. For modifications to this block that are required to
enable TLS, see
the using TLS section.
The Threadmanager Block
This block controls the thread pools available inside James. Only expert administators should modify
this configuration.