costin 01/03/09 15:34:00
Modified: src/facade22/org/apache/tomcat/facade
HttpServletRequestFacade.java
HttpSessionFacade.java JspInterceptor.java
Log:
Fix for #429 - different session facade returned in different requests.
Now the session facade is 1-1 associated with the real session,
instead of beeing recycled with the request.
Thanks [EMAIL PROTECTED] (Gokul Singh) for reporting the bug.
Revision Changes Path
1.21 +9 -4
jakarta-tomcat/src/facade22/org/apache/tomcat/facade/HttpServletRequestFacade.java
Index: HttpServletRequestFacade.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat/src/facade22/org/apache/tomcat/facade/HttpServletRequestFacade.java,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- HttpServletRequestFacade.java 2001/03/06 16:07:44 1.20
+++ HttpServletRequestFacade.java 2001/03/09 23:33:59 1.21
@@ -111,7 +111,7 @@
usingReader=false;
usingStream=false;
parametersProcessed=false;
- if( sessionFacade!=null) sessionFacade.recycle();
+ sessionFacade=null;
if( isFacade != null ) isFacade.recycle();
isFacadeInitialized=false;
}
@@ -437,12 +437,17 @@
// No real session, return null
if( realSession == null ) {
- if( sessionFacade!= null) sessionFacade.recycle();
+ sessionFacade=null;
return null;
}
- if(sessionFacade==null)
+
+
+ sessionFacade=(HttpSessionFacade)realSession.getFacade();
+ if( sessionFacade==null ) {
sessionFacade=new HttpSessionFacade();
- sessionFacade.setRealSession( realSession );
+ sessionFacade.setRealSession( realSession );
+ realSession.setFacade( sessionFacade );
+ }
return sessionFacade;
}
1.8 +1 -1
jakarta-tomcat/src/facade22/org/apache/tomcat/facade/HttpSessionFacade.java
Index: HttpSessionFacade.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat/src/facade22/org/apache/tomcat/facade/HttpSessionFacade.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- HttpSessionFacade.java 2001/02/20 03:34:11 1.7
+++ HttpSessionFacade.java 2001/03/09 23:33:59 1.8
@@ -107,7 +107,7 @@
/** Package-level method - accessible only by core
*/
void recycle() {
- realSession=null;
+ // realSession=null;
}
// -------------------- public facade --------------------
1.17 +1 -1
jakarta-tomcat/src/facade22/org/apache/tomcat/facade/JspInterceptor.java
Index: JspInterceptor.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat/src/facade22/org/apache/tomcat/facade/JspInterceptor.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- JspInterceptor.java 2001/02/27 16:56:33 1.16
+++ JspInterceptor.java 2001/03/09 23:33:59 1.17
@@ -336,7 +336,7 @@
}
Handler wrapper=req.getHandler();
-
+
if( wrapper==null )
return 0;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]