vgritsenko 2004/05/17 11:39:58
Modified: src/java/org/apache/cocoon/components/flow/javascript/fom
FOM_JavaScriptInterpreter.java
Log:
Replace check for session with try/catch block
Revision Changes Path
1.30 +8 -3
cocoon-2.1/src/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java
Index: FOM_JavaScriptInterpreter.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- FOM_JavaScriptInterpreter.java 5 May 2004 17:08:05 -0000 1.29
+++ FOM_JavaScriptInterpreter.java 17 May 2004 18:39:58 -0000 1.30
@@ -377,8 +377,8 @@
private Scriptable setSessionScope(Scriptable scope) throws Exception {
Request request = ContextHelper.getRequest(this.avalonContext);
- // Check that session is available (avoids IllegalStateException)
- if (request.isRequestedSessionIdValid()) {
+ // FIXME: Where "session scope" should go when session is
invalidated?
+ try {
Session session = request.getSession(true);
HashMap userScopes =
(HashMap)session.getAttribute(USER_GLOBAL_SCOPE);
@@ -389,6 +389,11 @@
// Attach the scope to the current context
userScopes.put(getSitemapPath(), scope);
+ } catch (IllegalStateException e) {
+ // Session might be invalidated already.
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("Got '" + e + "' while trying to set
session scope.", e);
+ }
}
return scope;
}