Dominique.Holzwarth at ch.delarue.com
Dominique.Holzwarth at ch.delarue.com
Wed Mar 26 12:04:20 EDT 2008
Hello everyone I've already did some testing with mod_python's session mechanism and so far it seemed to work nice. My latest test case doesn't work at all tho... I have to scripts, sessiontest1.py and sessiontest2.py, both are directly in my "python-root" (the folder the publisher handler is using) Sessiontest1.py: ************************************************** from mod_python import Session import sessiontest2 secretText = "mysecret" def index(req): myClassObject = sessiontest2.myClass() msg = myClassObject.add() req.session = Session.FileSession(req) req.session['test'] = 5 req.session['meinKlassenObjekt'] = myClassObject req.session.save() return myClassObject.show(req.session.id()) ************************************************** Sessiontest2.py ************************************************** from mod_python import Session secretText = "mysecret" def index(req): req.session = Session.FileSession(req) if req.session.is_new(): return "Session is new: "+req.session.id() else: lala = req.session['test'] myClassObject = req.session['meinKlassenObjekt'] newVal = req.form.getfirst('button') cnt = myClassObject.add(newVal) req.session['meinKlassenObjekt'] = myClassObject req.session.save() return cnt return "default return" class myClass: def __init__(self): self.counter = 0 def add(self, val=1): self.counter = self.counter + val return self.counter def show(self, *value): msg = """ <html><body> <form action='/python/sessiontest2.py' method='post'> <input name='counter' type='text' readonly value='%s'/> <input name='new' type='text' /> <input name='button' type='submit' value='Add' /> </form> <p>ID: %s</p> </body></html> """ % (self.counter, value) return msg **************************************************** Here's what's happening: I call the sessiontest1.py which creates a new session (for a fresh browser window), does some stuff with the class-object, saves the object (resp. the session) and then it returns the html site generated from that class. When I submit that form the sessiontest2.py script is called and in my opinion it should load the previously created session (and do the stuff inside the 'else'). However, it always creates a new session instead of using the old one... Maybe anyone got an idea what could be wrong? Would be really nice! Greetings Dominique
|