Как вызвать конечную точку Soap с параметром ComplexType - PullRequest
0 голосов
/ 02 ноября 2019

Во-первых, извините за мой плохой английский.

Существует WSDL WebService для запроса шлюза SMS. Эта служба сообщает вам, например, что этот SMS-шлюз 100056448542 доступен или нет.

В качестве входных данных он получает 3 параметра:

parameter_name        | type
---------------------------------------------
CRMUsername           | string
CRMPassword           | string
dtblInquiryNumbers    | complexType

У меня проблема с установкой dtblInquiryNumbers в моем запросе.

Вы можете увидеть весь метод NumbersInquiry иопределение его параметров здесь:

<s:element name="NumbersInquiry">
    <s:complexType>
        <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="CRMUsername" type="s:string"/>
            <s:element minOccurs="0" maxOccurs="1" name="CRMPassword" type="s:string"/>
            <s:element minOccurs="0" maxOccurs="1" name="dtblInquiryNumbers">
                <s:complexType>
                    <s:sequence>
                        <s:any minOccurs="0" maxOccurs="unbounded" namespace="http://www.w3.org/2001/XMLSchema" processContents="lax"/>
                        <s:any minOccurs="1" namespace="urn:schemas-microsoft-com:xml-diffgram-v1" processContents="lax"/>
                    </s:sequence>
                    <s:attribute fixed="http://tempuri.org/dstExternalService.xsd" name="namespace"/>
                    <s:attribute fixed="NumbersInquiryDataTable" name="tableTypeName"/>
                </s:complexType>
            </s:element>
            <s:element minOccurs="0" maxOccurs="1" name="strMessage" type="s:string"/>
        </s:sequence>
    </s:complexType>
</s:element>

Что я пробовал до сих пор:

Я использую SoapUI для отправки запроса, как показано ниже:

enter image description here

Как видите, я просто поместил желаемое число в тег <item>.

Но похоже, что dtblInquiryNumbers параметр неверен в формате запроса!

Ответ: (похоже на ошибку)

enter image description here

Скажите, пожалуйста, как правильно отправить dtblInquiryNumbers в моем запросе?

...