AttributeError: reference_catalog
This Error Reference applies to:
Plone 3.0.x
This Error Reference is intended for:
Any audience.
If you encounter this problem when adding a new instance of one of your custom-written content types:
Traceback (innermost last): Module ZPublisher.Publish, line 119, in publish Module ZPublisher.mapply, line 88, in mapply Module ZPublisher.Publish, line 42, in call_object Module Products.CMFPlone.FactoryTool, line 368, in __call__ Module Products.CMFPlone.FactoryTool, line 152, in __getitem__ Module Products.CMFPlone.PloneFolder, line 348, in invokeFactory Module Products.CMFCore.TypesTool, line 716, in constructContent Module Products.CMFCore.TypesTool, line 278, in constructInstance Module Products.CMFCore.TypesTool, line 290, in _finishConstruction Module Products.CMFCore.CMFCatalogAware, line 148, in notifyWorkflowCreated Module Products.CMFCore.WorkflowTool, line 291, in notifyCreated Module Products.DCWorkflow.DCWorkflow, line 346, in notifyCreated Module Products.DCWorkflow.DCWorkflow, line 430, in _changeStateOf Module Products.DCWorkflow.DCWorkflow, line 529, in _executeTransition Module Products.DCWorkflow.DCWorkflow, line 389, in updateRoleMappingsFor Module Products.DCWorkflow.utils, line 64, in modifyRolesForPermission Module AccessControl.Permission, line 93, in setRoles Module Products.Archetypes.fieldproperty, line 101, in __get__ Module Products.Archetypes.Field, line 1666, in get Module Products.Archetypes.Referenceable, line 82, in getRefs Module Products.CMFCore.utils, line 123, in getToolByName AttributeError: reference_catalog
The problem is probably that you have added so-called bridges from Archetype fields to python properties, but without observing that reference fields must be bridged using atapi.ATReferenceFieldProperty - just using ATFieldProperty for a ReferenceField will cause the above error.