KJZZ Webmaster wrote at 2007-1-22 09:53 -0700: >I am using zope 2.8.1. and am using the following dtml method to reindex >the catalog: > ><dtml-let URL1=HTTP_REFERER> ><dtml-call "Catalog.manage_catalogReindex(REQUEST, RESPONSE, URL1)"> ><dtml-call expr="RESPONSE.redirect(URL1)"> ></dtml-let> > >However, midway through the reindex, I am receiving the following error >message: > >Traceback (innermost last): > Module ZPublisher.Publish, line 113, in publish > Module ZPublisher.mapply, line 88, in mapply > Module ZPublisher.Publish, line 40, in call_object > Module OFS.DTMLMethod, line 153, in __call__ > - <DTMLMethod at /somepath/somedtmlmethod> > - Physical Path: //somepath/somedtmlmethod >KeyError: 'validate' > >I checked the zope source file here: > >Zope-2.8.1-final\lib\python\OFS\DTMLMethod.py > >and found the reference to the "validate" method in line 128: > > if self.__dict__.has_key('validate'): > first_time_through = 0 > else: > self.__dict__['validate'] = security.DTMLValidate > first_time_through = 1 > try: > >My questions are these: > >a) what changes could I to the catalog to avoid this error in the future?
Your problem is not in the catalog. If the "KeyError: 'validate'" really comes from the code snippet above, then you have a "DTMLMethod" with a very strange "__dict__". A normal dict would not raise a "KeyError: 'validate'", even when 'validate' indeed does not exist. If fear, this problem is big enough that debugging is necessary. > ... >Is the catalog getting too large, and maybe the reindex is taking too long >to complete? No (there is no limit on the catalog size. It may just get a bit slower). >b) are there any changes to the script \lib\python\OFS\DTMLMethod.py that >I could make which would eliminate, or at least render this error message >harmless? Unlikely. The code (as least the quoted one) should work... -- Dieter _______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )