Re: Problem with xmlrpc and manage_pasteObjects
Here I have some answers for somebody interested: Casey Duncan wrote:
AFAIK, copy and paste in Zope use Cookies, so they won't work over XML-RPC as you found. You could move something programatically as follows
obj = context.tmp[id].aq_base context._setObject(obj, id) context.tmp.manage_delObjects(id)
This code could not be called directly from XML-RPC however...
Probably your best bet is to create a moveObject() external method that
does the above and call it from XML-RPC.
First, I don't call manage_pasteObjects directly using xmlrpc, I call a python script that uses manage_pasteObjects and since it works when I execute this script manually and cookies (clicking the test tab) and cookies disabled in the browser I suppose it must work when I call the python script using xmlrpc. What is the diference? (With the cookies disabled the paste button doesn't appears in the Zope management interface, then its correct that the cut/paste doesn't works without cookies using the management interface.) Second, there is a little mistake in the second line in your example (see my example). Here is the external method I use, following your instructions (thanks): def moveObject(self, origin, destination, id): if origin: obj = self[origin][id].aq_base else: obj = self[id].aq_base if destination: self[destination]._setObject(id, obj) else: self._setObject(id, obj) if origin: self[origin].manage_delObjects(id) else: self.manage_delObjects(id) I call this method from inside a script that is called by xmlrpc. Nevertheless, thank you Casey for your help. ----- Phil Harris wrote:
I'm pretty sure that the cut/copy/paste functionality needs cookies to do the work.
xmlrpc doesn't as yet support cookie, so there is a problem there.
Hope that helps.
Yes, true, cut/copy/paste needs cookies, but only if you use the management interface to accomplish the paste. If you do the paste programatically the variable in front of the manage_cutObjects command acts like the cookie, storing the reference to the cutted object. And, since I use xmlrpc to invoke a script that includes the necessary code to cut'n'paste I don't need cookie support. To solve the problem I finally use the method suggested by Casey Duncan. ------- Chris McDonough wrote:
This works from the management interface?
Yes, it works. If you execute the script clicking on the test tab it works. ;-) I found this in http://groups.yahoo.com/group/zope/message/54267 suggested by Wolfgang Strobl. ------- After, all this I hope that this message will be helpful for other people.
participants (1)
-
Juan Carlos Coruña