wsdl.exe错误:无法从名称空间" ..."导入绑定" ..."
时间:2020-03-05 18:57:17 来源:igfitidea点击:
在我创建的WSDL上运行wsdl.exe时,出现以下错误:
Error: Unable to import binding 'SomeBinding' from namespace 'SomeNS'. Unable to import operation 'someOperation'. These members may not be derived.
我使用的是文档文字样式,据我所知,我遵守所有规则。
综上所述,我有一个有效的WSDL,但该工具不喜欢它。
我要寻找的是是否有人对wsdl.exe工具有丰富的经验,并且知道一些我不知道的秘密陷阱。
解决方案
回答
我遇到了同样的错误消息。挖掘了一段时间后,发现除了wsdl文件之外,还可以提供xsd文件。因此,在wsdl命令末尾除了.wsdl之外,还包含/导入了.xsd文件,如下所示:
wsdl.exe myWebService.wsdl myXsd1.xsd myType1.xsd myXsd2.xsd ...
Wsdl发出了一些警告,但确实创建了一个正常的服务界面。
回答
有时我们必须更改代码。
消息的部分名称不应该相同;)
<wsdl:message name="AnfrageRisikoAnfrageL"> <wsdl:part name="parameters" element="his1_0:typeIn"/> </wsdl:message> <wsdl:message name="AnfrageRisikoAntwortL"> <wsdl:part name="parameters" element="his1_0:typeOut"/> </wsdl:message>
对此:
<wsdl:message name="AnfrageRisikoAnfrageL"> <wsdl:part name="in" element="his1_0:typeIn"/> </wsdl:message> <wsdl:message name="AnfrageRisikoAntwortL"> <wsdl:part name="out" element="his1_0:typeOut"/> </wsdl:message>