[ 
https://issues.apache.org/struts/browse/TILES-207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Antonio Petrelli updated TILES-207:
-----------------------------------

      Description: 
ServletTilesRequestContext calls request.getSession() instead of 
request.getSession(false) and will therefore create a new session if one does 
not exist.  It should check an existing session, but should not create one.


  was:
ServletTilesRequestContext calls request.getSession() instead of 
request.getSession(false) and will therefore create a new session if one does 
not exist.  It should check an existing session, but should not create one.

Here is a patch to use getSession(false) instead:

Index: 
C:/JavaLibs/tiles-core/src/main/java/org/apache/tiles/servlet/context/ServletTilesRequestContext.java
===================================================================
--- 
C:/JavaLibs/tiles-core/src/main/java/org/apache/tiles/servlet/context/ServletTilesRequestContext.java
       (revision 572177)
+++ 
C:/JavaLibs/tiles-core/src/main/java/org/apache/tiles/servlet/context/ServletTilesRequestContext.java
       (working copy)
@@ -170,8 +170,8 @@
     /** [EMAIL PROTECTED] */
     public Map<String, Object> getSessionScope() {
 
-        if ((sessionScope == null) && (request != null)) {
-            sessionScope = new ServletSessionScopeMap(request.getSession());
+        if ((sessionScope == null) && (request != null) && 
(request.getSession(false) != null)) {
+            sessionScope = new 
ServletSessionScopeMap(request.getSession(false));
         }
         return (sessionScope);
 


         Priority: Major  (was: Minor)
    Fix Version/s: 2.0.5

The proposed patch, submitted by Neil Aggarwal, is:


Index: 
C:/JavaLibs/tiles-core/src/main/java/org/apache/tiles/servlet/context/ServletTilesRequestContext.java
===================================================================
--- 
C:/JavaLibs/tiles-core/src/main/java/org/apache/tiles/servlet/context/ServletTilesRequestContext.java
       (revision 572177)
+++ 
C:/JavaLibs/tiles-core/src/main/java/org/apache/tiles/servlet/context/ServletTilesRequestContext.java
       (working copy)
@@ -170,8 +170,8 @@
     /** [EMAIL PROTECTED] */
     public Map<String, Object> getSessionScope() {
 
-        if ((sessionScope == null) && (request != null)) {
-            sessionScope = new ServletSessionScopeMap(request.getSession());
+        if ((sessionScope == null) && (request != null) && 
(request.getSession(false) != null)) {
+            sessionScope = new 
ServletSessionScopeMap(request.getSession(false));
         }
         return (sessionScope);
 


> Do not create sessions in ServletTilesRequestContext
> ----------------------------------------------------
>
>                 Key: TILES-207
>                 URL: https://issues.apache.org/struts/browse/TILES-207
>             Project: Tiles
>          Issue Type: Improvement
>          Components: tiles-core
>    Affects Versions: 2.0.4
>         Environment: CentOS 5, Struts 2 with Tiles 2 plugin
>            Reporter: Neil Aggarwal
>             Fix For: 2.0.5
>
>
> ServletTilesRequestContext calls request.getSession() instead of 
> request.getSession(false) and will therefore create a new session if one does 
> not exist.  It should check an existing session, but should not create one.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to