Пользовательский интерфейс Soap не распознает сложный тип

Я участвовал в проекте, и мы разработали и используем веб-службу php NuSOAP. Я собирался использовать программное обеспечение SoapUI, чтобы протестировать его. Но проблема в том, что при создании нового проекта в SoapUI после ввода адреса исходного WSDL пишет:

Ошибка при загрузке WSDL

Что-то не так с WSDL, который вы пытаетесь импортировать.

Работает нормально, проблема только с SoapUI.

Ошибка возникла из следующих сложных типов:

$server->wsdl->addComplexType(
   'stringArray',
   'complexType',
   'array',
   '',
   'SOAP_ENC:Array',
   array(),
   array(
      array('ref' => 'SOAP-ENC:arrayType',
            'wsdl:arrayType' => 'xsd:string[]')
   ),
   'xsd:string'
);

$server->wsdl->addComplexType(
   'stringMatrix',
   'complexType',
   'array',
   '',
   'SOAP_ENC:Array',
   array(),
   array(
      array('ref' => 'SOAP-ENC:arrayType',
            'wsdl:arrayType' => 'tns:stringArray[]')
   ),
   'tns:stringArray'
);

Когда я проверил журнал ошибок, я увидел:

org.apache.xmlbeans.XmlException: Invalid QName value: Can't resolve prefix 'SOAP_ENC'

Как я уже говорил, сам сервис работает просто отлично. Но я должен проверить это с помощью этого программного обеспечения и просто не могу понять, почему оно выдало ошибку.

Что мне не хватает, что я должен сделать, чтобы заставить его работать?


person Safa Kadir    schedule 17.09.2015    source источник


Ответы (1)


Проблема была очень глупой крошечной вещью. «SOAP_ENC» должно быть «SOAP-ENC» с тире, а не с подчеркиванием. Он работал нормально, поэтому меня обманули. Мне жаль.

person Safa Kadir    schedule 17.09.2015