SOAP 请求中出现意外的 XML 输出



我已经为此苦苦挣扎了一天,但我无法正确格式化我的 SOAP 请求。这就是我的 Soap 请求的构建方式:

SoapObject request =  new SoapObject(NAMESPACE,  search);
SoapObject context =  new SoapObject(NAMESPACE, "context");
request.addProperty("pi_csecurity_data", "security token ");
SoapObject mainclass = new SoapObject(NAMESPACE, "mainclass");
mainClass.addAttribute("adm_nr", "621");
mainClass.addAttribute("main_comp_code", "*");
context.addProperty("itmpMcomp", mainClass);
//also tried context.addSoapObject(mainclass); here
request.addSoapObject(context);

这是我的输出:

<v:Envelope xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:d="http://www.w3.org/2001/XMLSchema" xmlns:c="http://schemas.xmlsoap.org/soap/encoding/" xmlns:v="http://schemas.xmlsoap.org/soap/envelope/">
<v:Header/>
<v:Body>
    <n0:search id="o0" c:root="1" xmlns:n0="namespace">
        <pi_csecurity_data i:type="d:string">security token</pi_csecurity_data>
        <n0:context i:type="n0:context">
            <n0:mainclass i:type="n0:mainclass" adm_nr="621" main_comp_code="*"/>
        </n0:context>
    </n0:search>
</v:Body>

正如您可能看到的,我缺少我的结束标记 <n0:主类>

有什么想法吗?:)

标签并不总是必须:

<tag>...</tag>

如果标签只有属性,就像你的情况一样,这个语法也是正确的

<tag />

最新更新