When provided with a simplexml object, call() will no longer send the request
with the xmlns attribute on the method tag. This change seemed to be introduced
with commit 844504759dcf6e20e04528cb8cca3268609bdd94. Now it creates the method
tag with the xmlns, but the deletes that and recreates it from a variable in
such a way that the xmlns attribute is no longer present.
What steps will reproduce the problem?
There may be a less noise way to reproduce it, but here is an example:
import pysimplesoap
params = pysimplesoap.simplexml.SimpleXMLElement('<{0} />'.format('test'))
pysimplesoap.client.SoapClient(location = 'http://www.google.com',
action='http://www.google.com', namespace='urn:testnamespace',
trace=True).call('test', params)
Run with this command to cut down the SNR to something useful:
python ./test 2>&1 | egrep "<soap:Body>" -B 2 -A 4
What is the expected output? What do you see instead?
Expected output (and confirmed with pysimplesoap prior to that commit):
[shpadoinkle : 6:43PM] zimbrasoap>python ./test 2>&1 | egrep "<soap:Body>" -B 2
-A 4
DEBUG:pysimplesoap.client:<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header/>
<soap:Body>
<test xmlns="urn:testnamespace">
</test>
</soap:Body>
</soap:Envelope>
Output from pysimplesoap after that commit:
[shpadoinkle : 6:44PM] soapgit>python ./test 2>&1 | egrep "<soap:Body>" -B 2 -A
4
DEBUG:pysimplesoap.client:<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header/>
<soap:Body>
<test/></soap:Body>
</soap:Envelope>
DEBUG:pysimplesoap.client:status: 405
What version of the product are you using? On what operating system?
I've tested on git commit 81d819b9c5ad6739749f4b6a3a1d7d3fcf885e71 (current)
and 844504759dcf6e20e04528cb8cca3268609bdd94 (first with issue) as both being
affected. The 1.13 download in github is my reference above for a working
version, though the commit immediately before the change also worked fine.
Original issue reported on code.google.com by secreti...@gmail.com on 30 Oct 2014 at 12:49
Original issue reported on code.google.com by
secreti...@gmail.com
on 30 Oct 2014 at 12:49Attachments: