如何修改XML负载解决SOAP异常:根元素需为Envelope
解决SOAPProcessingException异常:缺少SOAP Envelope元素
异常原因
你遇到的SOAPProcessingException是因为SOAP协议强制要求消息根元素必须是<Envelope>,但你提交的XML根元素是<prov>,完全不符合SOAP消息的结构规范。
错误的原始XML负载
<prov> <rowID>122</rowID> <msisdn>110000171</msisdn> <prov>
修正后的合规SOAP XML
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <prov> <rowID>122</rowID> <msisdn>110000171</msisdn> </prov> </soap:Body> </soap:Envelope>
关键修正点
- 新增SOAP标准的
<Envelope>根元素,并指定SOAP命名空间(这是SOAP消息的强制要求) - 在
<Envelope>内添加<Body>元素,所有业务数据必须放在<Body>中 - 修复原XML中未正确闭合的
<prov>标签,改为</prov>
内容的提问来源于stack exchange,提问作者Wajih Haider
相关产品推荐
相关产品推荐

