RE: [Zope] The id "s5/begin" contains characters illegal in URLs
Huh? Usually you have no chance to create a Zope object with such an id. So there is no need to rename something that can't exist be definition :-)
Exactly. The said object, "s5/Begin", is the "Begin" activity of the "s5" process found in the "GeneralWorkflow" workflow - which is an OpenFlow ( www.openflow.it ) object. I was able to rename my processes (S5, S100, S200) to their lowercase counterparts since all I had to do was do : /////////////////////////////////////////////////////// wf = container.GeneralWorkflow catalog = wf.Catalog processes = catalog.ZopeFind(wf, obj_metatypes=['Process'], search_sub=1) for p in processes: wf.manage_renameObject(p[0], p[0].lower()) /////////////////////////////////////////////////////// When I try to rename the activities found in those processes, I try to do likewise, but the ZopeFind results come out like this : ('S100/Begin', <activity at /dev/danny/wms/GeneralWorkflow/S100/Begin>) ('S100/RECEIPT_OF_SOURCE_DOCUMENTS', <activity at /dev/danny/wms/GeneralWorkflow/S100/RECEIPT_OF_SOURCE_DOCUMENTS>) ('S100/CHECK_MS_BATCHING', <activity at /dev/danny/wms/GeneralWorkflow/S100/CHECK_MS_BATCHING>) To call manage_renameObject (), I have to supply it with the object name. If I use result[0], I get the illegal characters in URL error. And if I use result[1].id, I get : Error Type: AttributeError Error Value: Begin This is probably because there is no "Begin" object under the "wf" container from which I'm calling manage_renameObject(). So my question is, how do I refer to the "Begin" object found in the S100 workflow ? Regards, Danny
--On 10. August 2006 14:19:40 +0800 "Sinang, Danny" <D.Sinang@spi-bpo.com> wrote:
Huh? Usually you have no chance to create a Zope object with such an id. So there is no need to rename something that can't exist be definition :-)
Exactly.
The said object, "s5/Begin", is the "Begin" activity of the "s5" process found in the "GeneralWorkflow" workflow - which is an OpenFlow ( www.openflow.it ) object.
You can't have some an object. If you have one, kick the related product since it appears that is bypasses the related checks. And of course for such objects the standard APIs might not work because they don't expect that an object have '/' inside their IDs and likely treat them as a path and not as an object ID. So your issue is basically unsupported. You might kick the authors of the related product or patch the related methods in OFS/*.py -aj
participants (2)
-
Andreas Jung -
Sinang, Danny