I'm not sure why this isn't in 2.3.1b1, but yes, the code in getobject was changed to use unrestrictedTraverse for this very reason. ----- Original Message ----- From: "Erik Enge" <erik@esol.no> To: <zope-dev@zope.org> Cc: <jens@digicool.com> Sent: Thursday, February 22, 2001 10:33 AM Subject: [Zope-dev] ZCatalog madness. (Must log in as emergencyuser.)
Right.
This is the traceback I get, after doing a search (searchResults) - which goes fine by teh way - and then trying to do an getobject(x.data_record_id_) as a non-emergencyuser user get up an login box and press escape:
Unauthorized
Sorry, a Zope error occurred.
Traceback (innermost last): File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 222, in publish_module File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 187, in publish File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 171, in publish File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/mapply.py, line 160, in mapply (Object: candidate_search) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 112, in call_object (Object: candidate_search) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/OFS/DTMLMethod.py, line 189, in __call__ (Object: candidate_search) File
/usr/local/Zope-2.3.1b1-linux2-x86/lib/python/DocumentTemplate/DT_String.py,
line 538, in __call__ (Object: candidate_search) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/DocumentTemplate/DT_In.py, line 702, in renderwob (Object: candidateEngine(REQUEST)) Unauthorized: 0
Right. Your average unauthorized I should think. Next, if I log in as the emergencyuser, this is what I get:
Traceback (innermost last): File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 222, in publish_module File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 187, in publish File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/Zope/__init__.py, line 221, in zpublisher_exception_hook (Object: Traversable) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 171, in publish File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/mapply.py, line 160, in mapply (Object: candidate_search) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/ZPublisher/Publish.py, line 112, in call_object (Object: candidate_search) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/OFS/DTMLMethod.py, line 189, in __call__ (Object: candidate_search) File
/usr/local/Zope-2.3.1b1-linux2-x86/lib/python/DocumentTemplate/DT_String.py,
line 538, in __call__ (Object: candidate_search) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/DocumentTemplate/DT_In.py, line 711, in renderwob (Object: candidateEngine(REQUEST)) File /usr/local/Zope-2.3.1b1-linux2-x86/lib/python/OFS/Traversable.py, line 107, in absolute_url (Object: CatalogAware) AttributeError: (see above)
Error Type: AttributeError Error Value: 'string' object has no attribute 'get'
The get thing is probably from me trying to call absolute_url on the objects it returns. Calling atributes works, though.
Strange. Doing getobject as a non-emergencyuser doesn't owrk, and when I have logged in the objects I get seems to be somewhat fubar.
Help is greatly appretiated.
(PS. I seem to recall a checkin in hte CVS about unrestrictedTraverse in one of the files belonging to the Catalog, could this has something to do with it?)
Zope 2.3.1b1 on Linux.
_______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )