我有一个 Python 脚本,它通过 SOAP 接口使用 suds 0.4.1-3.el6 与一些第三方软件一起工作。
一切正常,直到最近更新软件。现在所有脚本都像:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#
import logging
from suds import WebFault
from suds.client import Client
logging.basicConfig(level=logging.INFO)
logging.getLogger('suds.client').setLevel(logging.DEBUG)
client = Client("http://localhost:80/admin/soap/api3.wsdl")
#print client.location
#client.location = 'http://localhost:34012/'
print client
以。。结束:
Traceback (most recent call last):
File "print.py", line 18, in <module>
client = Client("http://localhost:80/admin/soap/api3.wsdl")
File "/usr/lib/python2.6/site-packages/suds/client.py", line 119, in __init__
sd = ServiceDefinition(self.wsdl, s)
File "/usr/lib/python2.6/site-packages/suds/servicedefinition.py", line 58, in __init__
self.paramtypes()
File "/usr/lib/python2.6/site-packages/suds/servicedefinition.py", line 137, in paramtypes
item = (pd[1], pd[1].resolve())
File "/usr/lib/python2.6/site-packages/suds/xsd/sxbasic.py", line 63, in resolve
raise TypeNotFound(qref)
suds.TypeNotFound: Type not found: '(soapDiscountAddons, http://www.w3.org/2001/XMLSchema, )'
软件支持人员说“我们的 WSDL 文件很好,请咨询 suds 开发人员”,所以我需要帮助来调查这个问题。
以前的工作文件:
https ://dl.dropbox.com/u/4299326/py/20130225.wsdl/old/api3.wsdl
https://dl.dropbox.com/u/4299326/py/20130225.wsdl/old /encoding.xml
新的崩溃文件:
https ://dl.dropbox.com/u/4299326/py/20130225.wsdl/new/api3.wsdl
https://dl.dropbox.com/u/4299326/py/20130225.wsdl/new /encoding.xml