Aloha, Scratch that, I found the problem. Anyone know if there was ever an mxmEasyProduct release where mxmSimpleItem.py did not import CatalogAware and did not have a 'boolean' entry in the _defaults definition? That was the problem - I had the above two differences in mxmSimpleItem.py, all of a sudden, in three different instances' Products folders. Afaik I only ever had one mxm folder - the one that works - it's like the Twilight Zone visited my dev system and my production system simultaneously. hi ho, John S. John Schinnerer wrote:
Aloha,
I have just moved some sites with relatively simple custom products from 2.7.5 to 2.8.8. The products enable creation, editing and cataloging of simple folderish objects with some properties and some contained objects. They are built using mxmEasyProduct.
I moved (installed) the necessary products in the 2.8.8 instance, then exported site root folders from 2.7.5 instance and imported them to 2.8.8 instance, then re-cataloged the catalogs. All that went fine and the vast majority of everything works, except the object indexing calls in the products!
Now all calls in my products to any of the object indexing methods give an AttributeError with the method name as the ErrorValue.
For example I have an edit function that updates properties of an object from data in a form submission and then reindexes the object with:
self.reindex_object()
Worked fine in 2.7.5, in 2.8.8 I get this traceback: ----------- Traceback (innermost last): Module ZPublisher.Publish, line 114, in publish Module ZPublisher.mapply, line 88, in mapply Module ZPublisher.Publish, line 40, in call_object Module Products.GTIGalleryItem.GTIGalleryItem, line 52, in editGTIGalleryItem AttributeError: reindex_object ----------- ...line 52 is simply the above line of code, self.reindex_object().
Likewise when adding such an object the call:
newObjId.index_object()
gives me this traceback: ------------------ Traceback (innermost last): Module ZPublisher.Publish, line 114, in publish Module ZPublisher.mapply, line 88, in mapply Module ZPublisher.Publish, line 40, in call_object Module Shared.DC.Scripts.Bindings, line 311, in __call__ Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec Module Products.PythonScripts.PythonScript, line 323, in _exec Module None, line 11, in add_GTIGalleryItem - <PythonScript at /growingthroughit.org/add_GTIGalleryItem used for /growingthroughit.org/galleryitems/wg> - Line 11 Module Products.GTIGalleryItem.GTIGalleryItem, line 99, in manage_addAction AttributeError: index_object -------------------- ...line 99 is the above code, newObjId.index_object()
Any call to someObject.unindex_object() gives an essentially similar AttributeError.
I have zearched zope.org and googled and I cannot find anything relevant...there is no mention of changes to the indexing methods in the CHANGES.txt files for 2.8.x or 2.7.x or anywhere else I can find.
I have installed the same mxmEasyProduct in 2.8.8 as in 2.7.5.
Any ideas welcome...why do I suddenly get an AttributeError here?
thanks, John S.
-- John Schinnerer - MA, Whole Systems Design ------------------------------------------ - Eco-Living - Whole Systems Design Services People - Place - Learning - Integration john@eco-living.net http://eco-living.net