I have experienced a weird situation with SOAPpy. I
have tried both version 0.11.6 and 0.12.0).
Will follow the simple script and the traceback,
Outgoing SOAP, Incoming SOAP and the traceback.
Python 2.3.5 (#1, Sep 6 2005, 12:53:27)
[GCC 3.3.4] on linux2
Type "help", "copyright", "credits" or "license" for
more information.
>>> from SOAPpy import WSDL
>>> url =
'http://aspweb.rds-software.com/rdsv5i/ws/JWSBiLauncher?WSDL'
>>> server = WSDL.Proxy(url)
>>> server.soapproxy.config.dumpSOAPOut = 1
>>> server.soapproxy.config.dumpSOAPIn = 1
>>> request = {'biTimeStamp': 'a',
... 'biType': 'b',
... 'consumerType': 'c',
... 'idIn': 'd',
... 'idOut': 'e',
... 'xmlSource': 'f'}
>>> server.launchBiArticoli(request)
*** Outgoing SOAP
******************************************************
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
>
<SOAP-ENV:Body>
<ns1:launchBiArticoli
xmlns:ns1="http://asp.rds-software.com/jwsc/wsdl/JWSBiLauncher"
SOAP-ENC:root="1">
<v1>
<consumerType xsi:type="xsd:string">c</consumerType>
<biType xsi:type="xsd:string">b</biType>
<biTimeStamp xsi:type="xsd:string">a</biTimeStamp>
<_x005F_xFFFF_x005F_xmlSource
xsi:type="xsd:string">f</_x005F_xFFFF_x005F_xmlSource>
<idIn xsi:type="xsd:string">d</idIn>
<idOut xsi:type="xsd:string">e</idOut>
</v1>
</ns1:launchBiArticoli>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
************************************************************************
*** Incoming SOAP
******************************************************
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns0="http://asp.rds-software.com/jwsc/types/JWSBiLauncher"
env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><env:Body><env:Fault><faultcode>env:Client</faultcode><faultstring>JAXRPCTIE01:
caught exception while handling request:
deserialization error: unexpected XML reader state.
expected: END but found: START:
v1</faultstring></env:Fault></env:Body></env:Envelope>
************************************************************************
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File
"/usr/local/lib/python2.3/site-packages/SOAPpy/Client.py",
line 470, in __call__
return self.__r_call(*args, **kw)
File
"/usr/local/lib/python2.3/site-packages/SOAPpy/Client.py",
line 492, in __r_call
self.__hd, self.__ma)
File
"/usr/local/lib/python2.3/site-packages/SOAPpy/Client.py",
line 406, in __call
raise p
SOAPpy.Types.faultType: <Fault env:Client: JAXRPCTIE01:
caught exception while handling request:
deserialization error: unexpected XML reader state.
expected: END but found: START: v1>
I have been able to get an outgoing SOAP that "works",
obtaining it from an online SOAP client. It looks
different from outgoing xml generated by SOAPpy. That's it:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://asp.rds-software.com/jwsc/wsdl/JWSBiLauncher"
xmlns:ns2="http://asp.rds-software.com/jwsc/types/JWSBiLauncher"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<mns:launchBiArticoli
xmlns:mns="http://asp.rds-software.com/jwsc/wsdl/JWSBiLauncher"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<AnagArticoli_1
xsi:type="ns2:AnagArticoli">
<biTimeStamp
xsi:type="xsd:string">a</biTimeStamp>
<biType
xsi:type="xsd:string">b</biType>
<consumerType
xsi:type="xsd:string">c</consumerType>
<idIn
xsi:type="xsd:string">d</idIn>
<idOut
xsi:type="xsd:string">e</idOut>
<xmlSource
xsi:type="xsd:string">f</xmlSource>
</AnagArticoli_1>
</mns:launchBiArticoli>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
View and moderate all "bugs Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Bugs"
Hi user,
It seems you should use the keyword argument when invoking:
>>> server.launchBiArticoli(**request)
Hope you are still there.
Last edit: Anonymous 2015-06-12