I start the documentum web service, for which I start with simple code:
from suds.client import Client #@UnresolvedImport from suds.transport.https import HttpAuthenticated import urllib2 t=HttpAuthenticated(username='x', password='x') t.handler = urllib2.HTTPBasicAuthHandler(t.pm) t.urlopener = urllib2.build_opener(t.handler) url = 'http://hudt17:8888/services/core/ObjectService?wsdl' client = Client(url,transport=t) print client
It works fine if url='http://www.weather.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl' . But I have this error returned to me if it is not:
url='http://www.weather.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl'
https://docs.google.com/document/pub?id=1Qk8_qji385B9fZB-z4eMbPc1fv1AXVKEtbxr7Xx6AvQ
What's going on here?
There is a fix for this problem:
https://fedorahosted.org/suds/attachment/ticket/239/recurselevel-schema.py.patch
Click the "Original Format" link at the bottom of the page. Then you can apply the patch using:
patch schema.py < recurselevel-schema.py.patch
Then install suds source from the top-level source:
easy_install .
You are referencing an XSD schema that is referencing itself.
Or, which refers to another scheme, which refers to the first.
In any case, one or more circuits having a circular dependence.
This is considered a Suds tracker blocking error: https://fedorahosted.org/suds/ticket/239
Unfortunately, this problem has been open for more than 3 years since 2012.
I ran into the same problem while consuming a huge wsdl with multiple incoming and loopback calls. The version of suds-jurko version 0.6 does not support this, but current developers are cutting back on v0.7, it seems to solve this problem.
Download the latest zip and extract: (find the hint tag or the last tag or thread) https://bitbucket.org/jurko/suds/downloads
Installation:
$ sudo easy_install .
Make sure that:
$ pip freeze
Must show:
foaming-Jurko == 0.7.dev0