Updated Branches: refs/heads/wicket-1.5.x 89049eeb1 -> ac6e57484
WICKET-4842 WicketRuntimeException when Tomcat cleans up a session later on Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/ac6e5748 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/ac6e5748 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/ac6e5748 Branch: refs/heads/wicket-1.5.x Commit: ac6e574846db2c27143393246f9dbb75ae4a1b66 Parents: 89049ee Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Nov 2 16:50:42 2012 +0200 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Nov 2 16:50:42 2012 +0200 ---------------------------------------------------------------------- .../protocol/http/AbstractRequestLogger.java | 20 +++++++++++--- 1 files changed, 15 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/ac6e5748/wicket-core/src/main/java/org/apache/wicket/protocol/http/AbstractRequestLogger.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/protocol/http/AbstractRequestLogger.java b/wicket-core/src/main/java/org/apache/wicket/protocol/http/AbstractRequestLogger.java index 80476d2..18db452 100644 --- a/wicket-core/src/main/java/org/apache/wicket/protocol/http/AbstractRequestLogger.java +++ b/wicket-core/src/main/java/org/apache/wicket/protocol/http/AbstractRequestLogger.java @@ -108,9 +108,7 @@ public abstract class AbstractRequestLogger implements IStagedRequestLogger */ public AbstractRequestLogger() { - int requestsWindowSize = Application.get() - .getRequestLoggerSettings() - .getRequestsWindowSize(); + int requestsWindowSize = getRequestsWindowSize(); requestWindow = new RequestData[requestsWindowSize]; liveSessions = new ConcurrentHashMap<String, SessionData>(); } @@ -216,7 +214,7 @@ public abstract class AbstractRequestLogger implements IStagedRequestLogger requestdata.setSessionInfo(sessionInfo); long sizeInBytes = -1; - if (Application.get().getRequestLoggerSettings().getRecordSessionSize()) + if (Application.exists() && Application.get().getRequestLoggerSettings().getRecordSessionSize()) { try { @@ -419,7 +417,7 @@ public abstract class AbstractRequestLogger implements IStagedRequestLogger */ private void resizeBuffer() { - int newCapacity = Application.get().getRequestLoggerSettings().getRequestsWindowSize(); + int newCapacity = getRequestsWindowSize(); // do nothing if the capacity requirement hasn't changed if (newCapacity == requestWindow.length) @@ -508,4 +506,16 @@ public abstract class AbstractRequestLogger implements IStagedRequestLogger return buf.toString(); } + + private int getRequestsWindowSize() + { + int requestsWindowSize = 0; + if (Application.exists()) + { + requestsWindowSize = Application.get() + .getRequestLoggerSettings() + .getRequestsWindowSize(); + } + return requestsWindowSize; + } }
