You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Christoph Leiter (JIRA)" <ji...@apache.org> on 2013/10/18 15:43:42 UTC

[jira] [Created] (WICKET-5390) Session management doesn't work with Jetty's JDBCSessionManager

Christoph Leiter created WICKET-5390:
----------------------------------------

             Summary: Session management doesn't work with Jetty's JDBCSessionManager 
                 Key: WICKET-5390
                 URL: https://issues.apache.org/jira/browse/WICKET-5390
             Project: Wicket
          Issue Type: Improvement
          Components: wicket
    Affects Versions: 6.11.0
            Reporter: Christoph Leiter


I use JDBCSessionIdManager/JDBCSessionManager from Jetty to store my sessions in a DB. Jetty tries to be smart and determines if a session is dirty and only persists it then. The logic is that a call to HttpSession#setAttribute may cause the dirty flag to be set if A) the value is new OR B) the value is changed, i.e. not #equals to the previous value. Wicket stores a PageStoreManager$SessionEntry as an attribute. This class doesn't have a specific equals implementation and so from the Jetty point of view the session never changes. The effect is that after Jetty restores the session from the DB it will be always in the initial state.

One possible fix is to always return false in SessionEntry#equals. But I'm not sure what Jetty is doing here is correct either.



--
This message was sent by Atlassian JIRA
(v6.1#6144)