## Package org.apache.catalina.session

This package contains the standard `Manager` and `Session` implementations that represent the collection of active sessions and the individual sessions themselves, respectively, that are associated with a `Context`.

See:
Description

Class Summary
Constants: Manifest constants for the `org.apache.catalina.session` package.
DistributedManager: This manager is responsible for in memory replication of Sessions across a defined Cluster.
FileStore: Concrete implementation of the Store interface that utilizes a file per saved Session in a configured directory.
JDBCStore: Implementation of the `Store` interface that stores serialized session objects in a database.
ManagerBase: Minimal implementation of the Manager interface that supports no session persistence or distributable capabilities.
PersistentManager: Implementation of the Manager interface that makes use of a Store to swap active Sessions to disk.
PersistentManagerBase: Extends the ManagerBase class to implement most of the functionality required by a Manager which supports any kind of persistence, even if onlyfor restarts.
StandardManager: Standard implementation of the Manager interface that provides simple session persistence across restarts of this component (such as when the entire server is shut down and restarted, or when a particular web application is reloaded.
StandardSessionFacade: Facade for the StandardSession object.
StoreBase: Abstract implementation of the Store interface to support most of the functionality required by a Store.

## Package org.apache.catalina.session Description

This package contains the standard `Manager` and `Session` implementations that represent the collection of active sessions and the individual sessions themselves, respectively, that are associated with a `Context`. Additional implementations of the `Manager` interface can be based upon the supplied convenience base class (`ManagerBase`), if desired. Different implementations of `Session` are possible, but a need for functionality beyond what is provided by the standard implementation (`StandardSession`) is not expected.

The convenience `ManagerBase` base class is configured by setting the following properties:

- algorithm - Message digest algorithm to be used when generating session identifiers. This must be the name of an algorithm supported by the `java.security.MessageDigest` class on your platform. [DEFAULT_ALGORITHM]
- debug - Debugging detail level for this component. [0]
- distributable - Has the web application we are associated with been marked as "distributable"? If it has, attempts to add or replace a session attribute object that does not implement the `java.io.Serializable` interface will be rejected. [false]
- entropy - A string initialization parameter that is used to increase the entropy of the seeding of the random number generator used in creation of session identifiers. [NONE]
- maxInactiveInterval - The default maximum inactive interval, in minutes, for sessions created by this Manager. The standard implementation automatically updates this value based on the configuration settings in the web application deployment descriptor. [60]
- randomClass - The Java class name of the random number generator to be used when creating session identifiers for this Manager. [java.security.SecureRandom]

The standard implementation of the `Manager` interface (`StandardManager`) supports the following additional configuration properties:

- checkInterval - The interval, in seconds, between checks for sessions that have expired and should be invalidated. [60]
- maxActiveSessions - The maximum number of active sessions that will be allowed, or -1 for no limit. [-1]
- pathname - Pathname to the file that is used to store session data persistently across container restarts. If this pathname is relative, it is resolved against the temporary working directory provided by our associated Context, if any. ["sessions.ser"]

Copyright © 2000-2001 Apache Software Foundation. All Rights Reserved.