我参与过一个项目,我们开发并正在使用php NuSOAP Web服务。我打算用SoapUI软件来测试它。但问题是在输入初始WSDL的地址后,在SoapUI中创建一个新项目时,它说:
加载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'
正如我之前所说,服务本身运作得很好。但是我应该用这个软件来测试它,并且无法弄清楚它为什么会出错。
我错过了什么,我该怎么做才能让它发挥作用?
答案 0 :(得分:0)
问题是一个非常愚蠢的小事。 'SOAP_ENC'应该是'SOAP-ENC',带有破折号,而不是下划线。它工作正常,所以我被欺骗了。对不起。