[Zope] HOWTO: Using Xron on Zope 2.4.x
Jean Jordaan
jean@upfrontsystems.co.za
Sun, 16 Dec 2001 17:34:08 +0200
Hi all .. I struggled with this myself today, so I summed up the
wisdom of the archives for those who come after ;)
To use Xron on Zope 2.4.x, some hackery is required ..
1. Import DateTime correctly. Instead of:
from Globals import DateTime
do this:
from DateTime import DateTime
You need to do that once each in 'Dispatcher.py' and in
'XronDTMLMethod.py'
2. Implement the patches in this thread:
http://lists.zope.org/pipermail/zope-dev/2001-July/012486.html
In short: you need to do this:
from Products.PluginIndexes.FieldIndex.FieldIndex import FieldIndex
and instead of this:
self._catalog.addIndex('name', 'FieldIndex')
you now need to do this in a couple of places:
self._catalog.addIndex('name', UnIndex('name'))
3. Follow the workaround described here:
http://lists.zope.org/pipermail/zope/2001-April/087151.html
(To get around bad interaction between Xron and 'Z2.py' on startup.)
This is a drag. It has to happen every time you restart Zope. Yawn. I
tried to mitigate it by running something like this::
cd lib/python/Products/Xron
mv __init__.py __init__.py.not
rm -f __init__.pyc
cd ../../../../
(which I called called './xron_begone') from './start'.
Then call
http://server/Control_Panel/Products/Xron/manage_performRefresh
and finally run './xron_comeback', which is the inverse of
'./xron_begone'. (Anyone have any better suggestions?)
4. Slay the dragon hinted at here:
http://lists.zope.org/pipermail/zope-dev/2001-July/012502.html
AFAIK, this is fixed by providing authentication information in
'Dispatcher.py'::
(headers,response)=rpc(furl,'username','password') # Fire event
You should now be running Xron without any more problems. Unless I
missed something, of course! Corrections and elaborations welcome.
Regards,
Jean Jordaan