[Zope-CMF] CMFSetup cookie crumbler setup still broken

Jens Vagelpohl jens at dataflake.org
Thu Sep 22 10:22:38 EDT 2005

Just noticed another debilitating problem with the new cookie  
crumbler setup driven by CMFSetup in both SVN trunk and the 1.5 branch.

Symptom: In a new CMFSetup-created site, no one can log in at all. Ever.

Problem: The CookieCrumbler.__call__ method is being registered as  
before traverse hook wrongly.

Basically, the new cookie crumbler CMFSetup stuff wants to use the  
machinery for instantiating CMF Tools. This machinery relies on the  
fact that CMF tool constructors can be invoked without any argument,  
to be more precise, without an ID passed in because all those tools  
have unique IDs that are set at class level. The CookieCrumbler does  
not. When the traversal hook registration happens in  
CookieCrumbler.manage_afterAdd the ID is needed, but calls to  
self.getId() now return an empty string.

A workaround could be to set an ID at class level, just like CMF  
tools do. But I am uncomfortable with that because the cookie  
crumbler is not known to have a unique ID as other tools have.

Does anyone have a better suggestion?


More information about the Zope-CMF mailing list