Well, I solved it somehow.

If I import web2py.gluon.main and use web2py.gluon.main.wsgibase, "exec 
ccode in environment" will reimport web2py and web2py.gluon.globals.current 
will be created within the environment each time. If I import gluon.main and 
use gluon.main.wsgibase, "current" will be reused from outside the 
environment and the application works. 

However, during debugging with the built-in Rocket server, it seems like 
only one gluon.globals.current is used for all the threads. When a 
breakpoint is set in Auth.__init__(), "current" seems to have the same id() 
in all the threads. I thought it "current" should be different objects for 
each thread. I'm using Eclipse for the debugging and maybe it's being wrong. 
Still, I'm confused at the Python environment within environment and all the 
module namespace importing stuff. Maybe someone can explain what is going on 
and how I solved it?

Otherwise, web2py is working now.

Reply via email to