Неопределенный complexType 'http://schmeas.xmlsoap.org/soap/encoding/:Array' используется в качестве основы для ограничения сложных типов - PullRequest
5 голосов
/ 21 июня 2011

Я пытаюсь получить данные из службы AXIS для моего приложения .NET.Пока я могу собрать простые данные, такие как int, string ....Но когда я пытаюсь получить данные Array, такие как long [], массив содержит только правильное количество данных, но содержит только нулевые значения вместо идентификаторов, которые я хочу.

Мой 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">

Сообщение следующей ошибки:

'Undefined complexType' http://schmeas.xmlsoap.org/soap/encoding/:Array' используется в качестве основы для сложногоОграничение типа '

Я не понимаю, в чем проблема, и может ли это быть причиной того, что я получаю только нулевые значения?(Между прочим, я не имею в виду значения NULL!)

1 Ответ

1 голос
/ 28 июня 2011

После нескольких часов попыток поиска решений я, возможно, нашел решение этой проблемы. Может быть, вы, ребята, можете помочь по следующей ссылке

Раствор 1

...