Controlling Sessions
An HTTP session is a series of interactions between a single HTTP client (e.g., a web
browser instance) and a web server such as Tomcat. The servlet specification defines an
HttpSession
object that temporarily stores information
about a user, including a unique session identifier and references to Java objects that the
web application stores as attributes of the session. Typical uses of sessions include
shopping carts and sites that require users to sign in. Usually, sessions are set to time
out after a configurable period of user inactivity, where user inactivity is defined as a
pause in requests belonging to the HTTP session. Once a session has timed out, it is said to
be an invalid session, and if the user makes a new HTTP request to the
site a new, valid session has to be created, usually through a re-login.
Tomcat has pluggable session Manager
s that handle the
logic about how sessions are handled and session Store
s
to save and load sessions. Not every Manager
uses a
Store
to persist sessions; it is an implementation
option to use the Store
interface in order to provide
pluggable session store capabilities. Robust session Manager
s will implement some kind of persistent storage for their sessions,
regardless of whether they use the Store
interface.
Specifying a Manager
implementation works in a similar
fashion to specifying a Realm
:
<Manager className="some.manager.implementation.className" customAttribute1="some custom value" customAttribute2="some other custom ...
Get Tomcat: The Definitive Guide, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.