[Zope-dev] SessionDataManager oddness

Matt Hamilton matth@netsight.co.uk
Fri, 2 Mar 2001 10:19:41 +0000 (GMT)


Dear All,
  I am trying to add session tracking to a Product of mine.  I am trying
to add a SessionDataManager to a Folderish object in the __init__ method
of the class, but having troubles.  I think I am importing everything:

from Globals import HTMLFile
from Globals import Persistent
from Globals import default__class_init__
import Acquisition
import AccessControl.Role
import OFS.Folder
from Products.ZCatalog import ZCatalog
from Products.BTreeFolder import BTreeFolder
from Products.CoreSessionTracking.SessionDataManager import SessionDataManager
from Products.CoreSessionTracking.SessionDataContainer import SessionDataContainerMount
from Products.CoreSessionTracking.SessionData import SessionData
try:
    from Products.CoreSessionTracking.SessioningInterfaces import SessionDataManagerInterface
except:
    # pre-2.3 Zopes don't have an Interfaces module
    class SessionDataManagerInterface:
        pass

then in my __init__ method:

      ob = SessionDataManager(
        id='session_data_mgr', title='', path=None, timeout_mins=20)
      self._setObject('session_data_mgr', ob)

However I get an attribute error when trying to add an intance of the
product.  _sdc not found.

I have traced it using pdb, and from what I can find out it appears as if
it fails in _setObject.  More specifically SessionDataContainerMount
seems to not returning the correct thing. 

I have tried tracing the normal addition of a SessionDataManager in Zope
and it works fine.  SessionDataContainerMount doesn't have an __init__
method, but it looks like when I add a S.D.M via the normal web interface
__of__ gets called, but when my product tries to add it __del__ gets
called.

Any ideas?  I am at the end of my Zope internals knowledge.... if there is
anything else I can provide to help diagnose, let me know.

TIA,
Matt

-- 
Matt Hamilton                                         matth@netsight.co.uk
Netsight Internet Solutions, Ltd.          Business Vision on the Internet
http://www.netsight.co.uk                               +44 (0)117 9090901
Web Hosting | Web Design  | Domain Names  |  Co-location  | DB Integration