KJZZ Webmaster wrote at 2007-1-23 10:13 -0700: > File "X:\SomePath\Zope-2.8.1-final\lib\python\OFS\DTMLMethod.py", line >153, in __call__ > del self.__dict__['validate'] >KeyError: 'validate' > >Does this get us any closer to understanding the problem, or should we take >another approach?
Yes. At least, this line can cause a "KeyError", even without assuming that we have a very strange "__dict__". On the other hand, when you look at the code in "DTMLMethod", you will see that deleting 'validate' is controlled by the local variable 'first_time_through". And "first_time_through" is set to "1", if 'validated' was defined by this call and to "0", when 'validated' was already there. Thus, locally, this looks quite safe. This implies that what you see indicates that something non-local is tempering with the "DTMLMethod"'s 'validate'. I cannot tell you what this "non-local" is but I have a workaround for you (you must modify the code, however). You can prepend an "if 'validate' in self.__dict__:" before the "del self.__dict__['validate']". -- 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 )