Gaute Amundsen wrote at 2005-5-20 17:05 +0200:
We just upgraded to Zope 2.7.5-1.fc3, python 2.3.4, and now I am having problems with authoring "Script (Python)"
(using ssh tunnel: "ssh -L 2001:localhost:8081 root@remotehost")
I am using emacs, using eldav, using nd. I have traced the problem to this command issued by eldav in the process of saving changes to a file.
"nd -S -p /localpath/script.py -a Zope http://localhost:2001/path/on/remote/server/script.py"
The problem is replicated on the commandline.
Unfortunately, the Zope world is much more complex than WebDAV expects. WebDAV knows only two types of resources: collection resources and non-collection resources. Zope, on the other hand, knows arbitrary many resouce types: Folders, PageTemplate, PythonScripts, DTMLMethods, Files, Images, .... When you create a new object via WebDAV (or FTP or another filesystem oriented protocol), then Zope does not have enough information to determine which type of object it should create. Therefore, it calls a hook, the so called "PUT_Factory", to determine the object type. Obviously, the "PUT_Factory" active in your context got it wrong. There is a HowTo around, how to set up your own "PUT_Factory". Note, in a CMF/Plone context (you did not tell us your context), the "PUT_Factory" is called "content_type_registry". -- Dieter