无效的肥皂呼叫

时间:2015-10-22 05:42:03

标签: soap soapui

为什么这个肥皂调用不能用于此URL?

http://services.aonaware.com/DictService/DictService.asmx?op=Define

<v:Envelope xmlns:i="http://www.w3.org/1999/XMLSchema-instance" xmlns:d="http://www.w3.org/1999/XMLSchema" xmlns:c="http://schemas.xmlsoap.org/soap/encoding/" xmlns:v="http://schemas.xmlsoap.org/soap/envelope/">
    <v:Header />
    <v:Body>
        <Define xmlns="http://tempuri.org/" id="o0" c:root="1">
            <word i:type="d:string">Name</word>
        </Define>
    </v:Body>
</v:Envelope>

但是这个确实

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://services.aonaware.com/webservices/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:Define>
         <!--Optional:-->
         <web:word>Test</web:word>
      </web:Define>
   </soapenv:Body>
</soapenv:Envelope>

1 个答案:

答案 0 :(得分:1)

因为它们不同:不仅在内容上而且在命名空间定义中,要纠正您使用正确命名空间的第一个,因此请使用http://services.aonaware.com/webservices/作为<Define>元素你做的是第二个:

<v:Envelope xmlns:i="http://www.w3.org/1999/XMLSchema-instance" xmlns:d="http://www.w3.org/1999/XMLSchema" xmlns:c="http://schemas.xmlsoap.org/soap/encoding/" xmlns:v="http://schemas.xmlsoap.org/soap/envelope/">
    <v:Header />
    <v:Body>
        <Define xmlns="http://services.aonaware.com/webservices/" id="o0" c:root="1">
            <word i:type="d:string">Name</word>
        </Define>
    </v:Body>
</v:Envelope>

然后确保id c:root xsd是您<Definition>的{​​{1}}和i:type的有效属性<word> http://services.aonaware.com/DictService/DictService.asmx <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <DefineResponse xmlns="http://services.aonaware.com/webservices/"> <DefineResult> <Word>Name</Word> <Definitions> <Definition> <Word>Name</Word> <Dictionary> <Id>gcide</Id> <Name>The Collaborative International Dictionary of English v.0.44</Name> </Dictionary> <WordDefinition>Name \Name\ (n[=a]m), n. [AS. nama; akin to D. naam, OS. &amp; OHG. ... [1913 Webster]</WordDefinition> </Definition> <Definition> <Word>Name</Word> <Dictionary> <Id>gcide</Id> <Name>The Collaborative International Dictionary of English v.0.44</Name> </Dictionary> <WordDefinition>Name \Name\ (n[=a]m), v. t. [imp. &amp; p. p. {Named} (n[=a]md); p. ... </WordDefinition> </Definition> </Definitions> </DefineResult> </DefineResponse> </soap:Body> </soap:Envelope> {1}}。

编辑

我使用更正的请求使用SOAPUI调用{{1}}并正确响应:

{{1}}

希望这有帮助,