[Zope] LoginManager disrupts access to protected object above it

Itai Tavor itai@optusnet.com.au
Mon, 22 Jan 2001 11:18:08 +1100


Hi,

This problem started with failure to access Control_Panel, which I 
thought was due to a SiteAccess problem... but I now tracked it to a 
problem with an instance of LoginManager.

I have the following setup:

Zope 2.3.0b2
ZPatterns 0.4.3b2
LoginManager 0.8.8b1

Zope/
     test1 (PythonScript) requires Manager to view
     folder/
         test2 (PythonScript) Manager proxy role
         acl_users (LoginManager)

test1:
     return 'spam'

test2:
     return container.test1

Calling test2 results in the traceback attached below. If I remove 
acl_users, test2 works. The LoginManager is a bit tricky, as it uses 
a virtual UserSource loading user objects from an external 
Specialist, but it seems to work in every other way. I have no idea 
if this problem is due to a bug in my LoginManager implementation or 
a general LoginManager bug.

Can anyone explain this or suggest a way to find out what is going wrong?

TIA


           AttributeError

           test1

Traceback (innermost last):
   File /opt/Zope-2.3.0b2-linux2-x86/lib/python/ZPublisher/Publish.py, 
line 222, in publish_module
   File /opt/Zope-2.3.0b2-linux2-x86/lib/python/ZPublisher/Publish.py, 
line 187, in publish
   File /opt/Zope-2.3.0b2-linux2-x86/lib/python/Zope/__init__.py, line 
221, in zpublisher_exception_hook
     (Object: Traversable)
   File /opt/Zope-2.3.0b2-linux2-x86/lib/python/ZPublisher/Publish.py, 
line 171, in publish
   File /opt/Zope-2.3.0b2-linux2-x86/lib/python/ZPublisher/mapply.py, 
line 160, in mapply
     (Object: test2)
   File /opt/Zope-2.3.0b2-linux2-x86/lib/python/ZPublisher/Publish.py, 
line 112, in call_object
     (Object: test2)
   File 
/opt/Zope-2.3.0b2-linux2-x86/lib/python/Shared/DC/Scripts/Bindings.py, 
line 325, in __call__
     (Object: test2)
   File 
/opt/Zope-2.3.0b2-linux2-x86/lib/python/Shared/DC/Scripts/Bindings.py, 
line 354, in _bindAndExec
     (Object: test2)
   File 
/opt/Zope-2.3.0b2-linux2-x86/lib/python/Products/PythonScripts/PythonScript.py, 
line 330, in _exec
     (Object: test2)
     (Info: ({'script': <PythonScript instance at 8894938>, 'context': 
<Folder instance at 88096c8>, 'container': <Folder instance at 
88096c8>, 'traverse_subpath': []}, (), {}, None))
   File Script (Python), line 2, in test2
   File 
/opt/Zope-2.3.0b2-linux2-x86/lib/python/Products/PythonScripts/Guarded.py, 
line 273, in __getattr__
   File 
/opt/Zope-2.3.0b2-linux2-x86/lib/python/Products/PythonScripts/Guarded.py, 
line 143, in __careful_getattr__
     (Object: Traversable)
AttributeError: (see above)
-- 
Itai Tavor                    "Je sautille, donc je suis."
C3Works    itai@c3works.com              - Kermit the Frog

"If you haven't got your health, you haven't got anything"