[Fedora-suds-list] WSDL is valid but have error TypeNotFound: Type not found:

Jeff Ortel jortel at redhat.com
Wed Sep 22 20:16:30 UTC 2010


I get the same error.  The problem is that an <xs:attribute/> in the 
CSWProviderDetailsType references "tns:namespaceURL" with is not defined in this XSD nor 
does it import it.  I really don't know how this works in any other tool.


<snip>

    <xs:complexType name='CSWProviderDetailsType'>
     <xs:complexContent>
      <xs:extension base='tns:ProviderDetailsType'>
       <xs:sequence>
        <xs:element name='outputSchema' type='xs:string'/>
        <xs:element maxOccurs='unbounded' name='typeName'>
         <xs:complexType>
          <xs:sequence/>
          <xs:attribute ref='tns:namespaceURI' use='required'/>   <---- HERE
          <xs:attribute ref='tns:localPart' use='required'/>
         </xs:complexType>
        </xs:element>
       </xs:sequence>
      </xs:extension>
     </xs:complexContent>
    </xs:complexType>

</snip>


On 09/22/2010 11:00 AM, Passmore, James H wrote:
> suds version 0.4
>
> I am trying the following code to connect to a WSDL
>
> import suds
> url = 'http://neptune.badc.rl.ac.uk:8180/discovery/dpws?wsdl'
> client = suds.client.Client(url)
>
> But I get error:
>
> DEBUG:suds.wsdl:reading wsdl at: http://neptune.badc.rl.ac.uk:8180/discovery/dpws?wsdl ...
> DEBUG:suds.transport.http:opening (http://neptune.badc.rl.ac.uk:8180/discovery/dpws?wsdl)
> Traceback (most recent call last):
>    File "<pyshell#8>", line 1, in<module>
>      client = suds.client.Client(url)
>    File "/usr/local/lib/python2.6/dist-packages/suds/client.py", line 112, in __init__
>      self.wsdl = reader.open(url)
>    File "/usr/local/lib/python2.6/dist-packages/suds/reader.py", line 152, in open
>      d = self.fn(url, self.options)
>    File "/usr/local/lib/python2.6/dist-packages/suds/wsdl.py", line 159, in __init__
>      self.build_schema()
>    File "/usr/local/lib/python2.6/dist-packages/suds/wsdl.py", line 220, in build_schema
>      self.schema = container.load(self.options)
>    File "/usr/local/lib/python2.6/dist-packages/suds/xsd/schema.py", line 95, in load
>      child.dereference()
>    File "/usr/local/lib/python2.6/dist-packages/suds/xsd/schema.py", line 323, in dereference
>      midx, deps = x.dependencies()
>    File "/usr/local/lib/python2.6/dist-packages/suds/xsd/sxbasic.py", line 674, in dependencies
>      raise TypeNotFound(self.ref)
> TypeNotFound: Type not found: '(namespaceURI, http://ejb.revitalization.services.ndg/, )'
>
>
>   oXygen tells me the WSDL is valid, and I can use the WSDL SOAP analyser to fire off a test request with no problem.
>
> I understand that there is doctor class to fix broken schemas  I just don't know what's broken to be fixed.
>
> Any help greatly appreciated
>
> many thanks
>
> James
>
>
>
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5126 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.fedoraproject.org/pipermail/suds/attachments/20100922/b80b6fc3/attachment.bin 


More information about the suds mailing list