我正确地给出了所有请求,但我无法得到响应。它显示版本不匹配错误。
重新设置XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://test1.test.com/ticket/v1" xmlns:v3="http://test1.test.com/commonheader/v3">
</soapenv:Header>
<soap:Body>
<sit:SubmitSectorRequest>
<sit:RadioEquipmentType/>
<sit:BBUPortNumber/>
<sit:vendorName/>
<sit:rrhEquipmentType/>
<sit:radioSerialNumber/>
<sit:radioID/>
<sit:radioFMId/>
<sit:ERPText>DBM</sit:ERPText>
<sit:antennaHeight/>
<sit:antennaTilt/>
<sit:antennaType>0</sit:antennaType>
<sit:effectivePower>290</sit:effectivePower>
<sit:equipmentId>T179</sit:equipmentId>
<sit:equipmentName>NS39 PENNINGTON BEND</sit:equipmentName>
<sit:forwardPower>20</sit:forwardPower>
<sit:market>DEOIT</sit:market>
<sit:orientation/>
<sit:region>CENTRAL</sit:region>
<sit:retSiteId/>
<sit:sectorId>3</sit:sectorId>
<sit:sectorStatus>1</sit:sectorStatus>
<sit:siteId>314179</sit:siteId>
<sit:tilt/>
<!--Optional:-->
<sit:submitter>BA4309</sit:submitter>
<!--Optional:-->
<sit:SoftSectorId>TNL03179_9</sit:SoftSectorId>
<!--Optional:-->
<sit:remoteUSID/>
<!--Optional:-->
<sit:isRRHTowerMounted>0</sit:isRRHTowerMounted>
</sit:SubmitSectorRequest>
</soap:Body>
</soap:Envelope>
响应XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:VersionMismatch</faultcode>
<faultstring>Transport level information does not match with SOAP Message namespace URI</faultstring>
<detail/>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
请帮我修复此版本不匹配错误并分享解决方案
答案 0 :(得分:9)
“xmlns:soap”值“http://schemas.xmlsoap.org/soap/envelope/”的问题 ,而不是这个,您可以使用“http://www.w3.org/2003/05/soap-envelope”来解决您的问题。
SOAP版本控制基于XML命名空间。 SOAP 1.1由schemas.xmlsoap.org命名空间标识,而SOAP 1.2由第二个标识符标识。
答案 1 :(得分:3)
从标准中可以看到here,在SOAP Fault
中,必须在以下情况下返回faultCode VersionMismatch
:
错误节点找到了无效的元素信息项而不是预期的Envelope元素信息项。命名空间,本地名称或两者都与此建议所需的Envelope元素信息项
不匹配
因此,您的案例中的问题可能是请求中的命名空间不正确,<soapenv:Header>
标记格式不正确,原因是您的服务器返回VersionMismatch
错误。如果您查看您的请求:
<soapenv:Header>
格式不正确,关闭并清空标记使用<soapenv:Header/>
而不是</soapenv:Header>
。
您正在定义以下命名空间前缀:
xmlns:v1="..." xmlns:v3="..."
但是,在您的元素请求中,如果未定义,则使用sit
前缀。
解决此问题,可能错误消失了。