未定义的复杂类型“http://schmeas.xmlsoap.org/soap/encoding/:Array”用作复杂类型限制的基础
我正在尝试从 AXIS 服务获取 .NET 应用程序的数据。到目前为止,我能够收集简单的数据,如 int、string ... 。但是当我尝试获取像 long[] 这样的数组数据时,数组只包含正确的数据计数,但只包含零值而不是我想要的 ID。
我的 WSDL 如下所示:
<wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:intf="urn:api.broadmail.de/soap11/RpcRecipientList" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns2="http://lang.java" xmlns:impl="urn:api.broadmail.de/soap11/RpcRecipientList" targetNamespace="urn:api.broadmail.de/soap11/RpcRecipientList" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:api.broadmail.de/soap11/RpcRecipientList">
<xsd:import namespace="http://lang.java" />
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
<xsd:complexType name="WebserviceException">
<xsd:sequence>
<xsd:element name="cause" nillable="true" type="xsd:anyType" />
<xsd:element name="message" nillable="true" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOf_xsd_string">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="xsd:string[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="ArrayOf_xsd_long">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="xsd:long[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="ArrayOfArrayOf_xsd_string">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="xsd:string[][]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="getDataSetRequest">
<wsdl:part name="in0" type="xsd:string" />
</wsdl:message>
<wsdl:message name="setNameResponse" />
<wsdl:message name="WebserviceException">
<wsdl:part name="fault" type="impl:WebserviceException" />
</wsdl:message>
<wsdl:message name="getDescriptionRequest">
<wsdl:part name="in0" type="xsd:string" />
<wsdl:part name="in1" type="xsd:long" />
</wsdl:message>
.....
当我使用 VS2010 打开它时,以下几行带有下划线:
<xsd:restriction base="soapenc:Array">
出现以下错误:
'未定义的复杂类型 'http://schmeas.xmlsoap.org/soap/encoding/:Array' 用作基础复杂类型限制'
我不明白问题是什么,这可能是我只得到零值的原因吗? (顺便说一句,我的意思不是 NULL 值。!)
I'm tryin to get data from an AXIS Service for my .NET Application. So far I am able to gather simple data like int, string ... . But when I try to get Array data like long[] the array only contains the right count of data but only containing zero values instead of the ID's I want.
My WSDL looks like this :
<wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:intf="urn:api.broadmail.de/soap11/RpcRecipientList" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns2="http://lang.java" xmlns:impl="urn:api.broadmail.de/soap11/RpcRecipientList" targetNamespace="urn:api.broadmail.de/soap11/RpcRecipientList" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:api.broadmail.de/soap11/RpcRecipientList">
<xsd:import namespace="http://lang.java" />
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
<xsd:complexType name="WebserviceException">
<xsd:sequence>
<xsd:element name="cause" nillable="true" type="xsd:anyType" />
<xsd:element name="message" nillable="true" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOf_xsd_string">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="xsd:string[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="ArrayOf_xsd_long">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="xsd:long[]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="ArrayOfArrayOf_xsd_string">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute wsdl:arrayType="xsd:string[][]" ref="soapenc:arrayType" />
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="getDataSetRequest">
<wsdl:part name="in0" type="xsd:string" />
</wsdl:message>
<wsdl:message name="setNameResponse" />
<wsdl:message name="WebserviceException">
<wsdl:part name="fault" type="impl:WebserviceException" />
</wsdl:message>
<wsdl:message name="getDescriptionRequest">
<wsdl:part name="in0" type="xsd:string" />
<wsdl:part name="in1" type="xsd:long" />
</wsdl:message>
.....
The following lines are underlined when I open it with VS2010 :
<xsd:restriction base="soapenc:Array">
Saying the following Error :
'Undefined complexType 'http://schmeas.xmlsoap.org/soap/encoding/:Array' is used as a base for complex Type restricition'
I don't get what the Problem ist, and might this be the reason why I only get zero values ? ( I don't mean NULL values btw. ! )
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
经过几个小时的尝试和寻找解决方案后,我也许找到了这个问题的解决方案。也许你们可以通过以下链接得到帮助
解决方案 1
After several hours of trying and searching for solutions I maybe found a solution for this Problem. Maybe you guys can be helped with the following link
Solution 1