[Zope-CMF] Objects getting cataloged but not in workflow

Dieter Maurer dieter@handshake.de
Fri, 25 Jul 2003 21:08:09 +0200


Rainer Thaden wrote at 2003-7-24 18:14 +0200:
 > ... cataloging without workflow ...
 > In your class you need to overwrite the methods you find in the base classes
 > dealing with the workflow.
 > 
 > Look in CMFCatalogAware.py and you find a method notifyWorkflowCreated
 > 
 > Overwrite this like
 > 
 > class yourclass(Basetypes)
 > 
 >     def notifyWorkflowCreated(self):
 >         pass
 > 
 > That should do it.

I fear, it may not be sufficient.

I recently analysed a very difficult Plone problem:

  "Update permission settings" in "portal_workflow" magically
  changed the permissions for 3 "PloneFolders", among
  them the "Plone Root" and the "Members" folder.

  It turned out that the affected folders have been the ones
  that were created before "portal_workflow" has been set up.
  Therefore, their "workflow_history" was not set up.
  "Update permission settings" interpreted this state
  as an object in the initial state and changed permissions
  accordingly.

  This problem is inherent in CMF and not restricted to Plone.

  Following your advice, one creates precisely such
  objects without "workflow_history" and has to be aware
  that their permissions magically change.

It is a *much* better idea to remove the workflow association
from "portal_workflow" for the respective type.


Dieter