Hello Massimo, I recently installed web2py for a small customer project and found that the online shell access is no longer working. I compared the contrib/shell.py with an older working version and I do see that you added a represent(obj) method. Launching the online shell this gaves me:
Traceback (most recent call last): File "E:\web2py\gluon\restricted.py", line 192, in restricted exec ccode in environment File "E:/web2py/applications/admin/controllers/shell.py", line 47, in <module> File "E:\web2py\gluon\globals.py", line 137, in <lambda> self._caller = lambda f: f() File "E:/web2py/applications/admin/controllers/shell.py", line 35, in callback output = gluon.contrib.shell.run(history,command,environ) File "E:\web2py\gluon\contrib\shell.py", line 258, in run history.set_global(name, val) File "E:\web2py\gluon\contrib\shell.py", line 104, in set_global blob = cPickle.dumps(value) File "c:\python27\lib\copy_reg.py", line 70, in _reduce_ex raise TypeError, "can't pickle %s objects" % base.__name__ TypeError: can't pickle StringO objects To fix this I replace shell.py with an older version. The second thing I found out was running the rocket webserver for port 8000 (http) and 8443 (https) on a single web2py instance using the interfaces. This works like a champ if you launch it from command line, however if you install web2py as a Windows service this doesnt work. To fix this simply add "interface=options.interfaces" to the start() method of winservice.py at line #131.