c – 使用复杂类型输入的WSDLPull

c – 使用复杂类型输入的WSDLPull,第1张

概述我正在尝试使用wsdlpull调用Web服务方法,这很简单,直到我得到一个接受一个复杂类型数组的参数的服务方法,在这种情况下,它需要1个参数,这是一个无限数量的类型包含2个成员 – 一组名称/值对. <s:complexType name="SendDetails"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" 我正在尝试使用wsdlpull调用Web服务方法,这很简单,直到我得到一个接受一个复杂类型数组的参数的服务方法,在这种情况下,它需要1个参数,这是一个无限数量的类型包含2个成员 – 一组名称/值对.

<s:complexType name="SendDetails">  <s:sequence>    <s:element minOccurs="0" maxOccurs="unbounded" name="Detail" type="tns:Detail"/>  </s:sequence></s:complexType><s:complexType name="Detail">  <s:sequence>    <s:element minOccurs="0" maxOccurs="1" name="name" type="s:string"/>    <s:element minOccurs="0" maxOccurs="1" name="Value" type="s:string"/>  </s:sequence></s:complexType>

我不知道如何将这些作为参数设置为wsdlpull.

在我使用不同的工具重写之前,有没有人有示例代码或片段让我开始?

解决方法 似乎Wsdlinvoker不支持这个(但是?). setValue调用 setInputValue,后者又调用 validate,但此方法在检测到复杂类型时停止处理:

const XSDType * pType = sParser_->getType(typeID);if (pType && !pType->isSimple()){   return 0;}

似乎唯一支持的复杂类型是包含简单内容模型的类型.

这就是说,我认为gSOAP2和Microsoft Windows Web Services API是更好的本土替代品.

@H_301_36@ 总结

以上是内存溢出为你收集整理的c – 使用复杂类型输入的WSDLPull全部内容,希望文章能够帮你解决c – 使用复杂类型输入的WSDLPull所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1227617.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存