我尝试致电组织,但没有WSDL。我正在尝试使用webServiceTemplate发出SOAP请求。
<ws:RegistrarEntrada xmlns:ws="http://ws.rtaws.rtaws.jccm.es" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<sUsuario>user</sUsuario>
<sClave>pass</sClave>
<strXML>
<Datos>
<AcuseRecibo>N</AcuseRecibo>
<CodSIACI>SJT3</CodSIACI>
<CodUniOrgDest>850</CodUniOrgDest>
<Observaciones>Registro.</Observaciones>
<ExisteRep>N</ExisteRep>
<NumDocumentos>0</NumDocumentos>
</Datos>
</strXML>
</ws:RegistrarEntrada>
将要发出SOAP请求时,在webServiceTemplate.sendSourceAndReceiveToResult(source, result);
中添加一个信封,然后发出请求:
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<ws:RegistrarEntrada xmlns:ws="http://ws.rtaws.rtaws.jccm.es" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<sUsuario>user</sUsuario>
<sClave>pass</sClave>
<strXML>
<Datos>
<AcuseRecibo>N</AcuseRecibo>
<CodSIACI>SJT3</CodSIACI>
<CodUniOrgDest>850</CodUniOrgDest>
<Observaciones>Registro.</Observaciones>
<ExisteRep>N</ExisteRep>
<NumDocumentos>0</NumDocumentos>
</Datos>
</strXML>
</ws:RegistrarEntrada>
</env:Body>
</env:Envelope>
这是我发送请求时在日志中看到的:
12:30:32,233 DEBUG sent:649 - Sent request [
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<ws:RegistrarEntrada xmlns:ws="http://ws.rtaws.rtaws.jccm.es" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<sUsuario>user</sUsuario>
<sClave>pass</sClave>
<strXML>
<Datos>
<AcuseRecibo>N</AcuseRecibo>
<CodSIACI>SJT3</CodSIACI>
<CodUniOrgDest>850</CodUniOrgDest>
<Observaciones>Registro.</Observaciones>
<ExisteRep>N</ExisteRep>
<NumDocumentos>0</NumDocumentos>
</Datos>
</strXML>
</ws:RegistrarEntrada>
</env:Body>
</env:Envelope>]
12:30:33,722 DEBUG received:706 - Received response [
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:RegistrarEntradaResponse xmlns:ns1="http://ws.rtaws.rtaws.jccm.es" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<RegistrarEntradaReturn xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="soapenc:string">
<?xml version="1.0" encoding="iso-8859-1"?>
;<RTA-JCCM>
<resultado>0
</resultado>
<fecha>04/12/2018 12:30:34
</fecha>
</RTA-JCCM></RegistrarEntradaReturn>
</ns1:RegistrarEntradaResponse>
</soapenv:Body>
</soapenv:Envelope>
]
错误:'尚未声明前缀'soapenv'的命名空间。'
如何在webServiceTemplate中将前缀“ env”更改为“ soapenv”以发送正确的请求?