1

我已经进行了大量研究,但找不到任何可以专门解决我的问题的东西。

我使用 wsdl2java 生成了我的 SOAP 客户端,问题是我的信封在发出时会在 HeaderElement 中创建我不需要存在的属性。

我创建了一个处理程序来构建我的标题,但无法从标题中删除这些属性。

示例 XML 即将发布。

<soapenv:Envelope xmlns:soapenv="http://..."
xmlns:v2="http://..."
xmlns:xsd="http://..." xmlns:xsi="...">
<soapenv:Header>
    <v2:wsMessageHeader soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
        soapenv:mustUnderstand="0">
        <v2:trackingMessageHeader>
            <values>....</values>
        </v2:trackingMessageHeader>
    </v2:wsMessageHeader>
</soapenv:Header>
<soapenv:Body>
    <item 
        xmlns="http://...">
        <geoCode>Zip</geoCode>
        <zip>
            <uspsPostalCd>49001</uspsPostalCd>
        </zip>
    </item>
</soapenv:Body>

我需要完全删除 soapenv:actor 和 soapenv:mustUnderstand 属性。

4

1 回答 1

-1

SOAP Header 是可选元素..您应该能够删除它..

messagecontext.getEnvelope().getHeader().detach();

无需做大量研究:)

于 2013-04-24T17:52:49.620 回答