/**
+ * Return the creation time for this session, bypassing the session validity
+ * checks.
+ */
+ public long getCreationTimeInternal();
+
+
+ /**
* Set the creation time for this session. This method is called by the
* Manager when an existing Session instance is reused.
*
}
@Override
+ public long getCreationTimeInternal() {
+ return 0;
+ }
+
+ @Override
public String getId() {
return sessionId;
}
// the manager because it is being persisted - update the expired stats
if (update) {
long timeNow = System.currentTimeMillis();
- int timeAlive = (int) ((timeNow - session.getCreationTime())/1000);
+ int timeAlive =
+ (int) (timeNow - session.getCreationTimeInternal())/1000;
updateSessionMaxAliveTime(timeAlive);
expiredSessions.incrementAndGet();
SessionTiming timing = new SessionTiming(timeNow, timeAlive);
/**
+ * Return the time when this session was created, in milliseconds since
+ * midnight, January 1, 1970 GMT, bypassing the session validation checks.
+ */
+ @Override
+ public long getCreationTimeInternal() {
+ return this.creationTime;
+ }
+
+
+ /**
* Return the ServletContext to which this session belongs.
*/
@Override
<bug>50413</bug>: Ensure 304 responses are not returned when using
static files as error pages. (markt)
</fix>
+ <fix>
+ <bug>50448</bug>: Fix possible <code>IllegalStateException</code>
+ caused by recent session management refactoring. (markt)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">