[XML-SIG] ZSI Namespace problems
Alexander Girman
alexander.girman at gmail.com
Thu Nov 8 23:07:36 CET 2007
Dear List,
I'm trying to build a client to consume a SOAP webservice, and am
having the damnedest time getting ZSI to pass along namespace
information to its generated SOAP message. The code is illustrated
below, along with the tracefile output for the SOAP request. Please
note that the <process /> and <input /> tags are unqualified, despite
being explicitly qualified in the generating code. The code otherwise
works (I can cut and paste the below query, add the namespaces by
hand, and send it to the webservice via curl and get the right
response). So the question is: why won't it augment the appropriate
tags with the declared namespaces? Any insight would be appreciated,
as I've been toiling over this for what seems like forever T_T...
def call_web_service(payload):
from ZSI.client import Binding
from ZSI import TC
import sys
url = 'https://www.example.com/'
n = 'aeg:do-process'
b = Binding(url = url, ns = n, tracefile = sys.stdout, nsdict={'ns': n})
class process:
def __init__(self, query):
self.input = payload
process.typecode=TC.Struct(process,[TC.String("ns:input")], "ns:process")
return b.RPC(url, 'ns:process', process(query), nsdict={'ns': n})
Produces:
_________________________________ Thu Nov 8 16:48:20 2007 REQUEST:
<SOAP-ENV:Envelope
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ZSI="http://www.zolera.com/schemas/ZSI/"
xmlns:ns="aeg:do-process" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Header></SOAP-ENV:Header><SOAP-ENV:Body><process><input
xsi:type="xsd:string">__PAYLOAD__</input></process></SOAP-ENV:Body></SOAP-ENV:Envelope>
_________________________________ Thu Nov 8 16:48:21 2007 RESPONSE:
500
Internal Server Error
More information about the XML-SIG
mailing list