Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.python
ZSI receiving complex type problem
catherine_jervis
2/5/2008 7:29:00 PM
I have a ZSI client talking to a perl program through SOAP. The perl
program has defined a return type of $esmith::recExtend, where
esmith::recExtend is a complex type defined in the WSDL as follows:
<complexType name="EsmithRecExtend">
<sequence>
<element name="databasename" nillable="true" type="xsd:string">
</element>
<element name="key" nillable="true" type="xsd:string">
</element>
<element name="properties" nillable="true"
type="tns1:ArrayOfString">
</element>
<element name="values" nillable="true" type="tns1:ArrayOfString">
</element>
<element name="size" nillable="true" type="xsd:int">
</element>
</sequence>
</complexType>
The perl method returns an esmith::recExtend object as follows:
$record = esmith::recExtend->new('dbname, $dbkey, \@prop, \@value,
$size);
return SOAP::Data->name('get_recordReturn' => $record);
The ZSI file is expecting an EsmithRecExtend object to be returned in
get_recordReturn. However, executing the above code causes the
following error:
ZSI.EvaluationException: No Registered xsi:type=
(
http://namespaces.soaplit...
, esmith__recExtend), subsititue
for xsi:type=(http://localhost:esmith/SOAPWrapper, EsmithRecExtend)
If I return SOAP::Data->name('get_recordReturn' => $record)-
>type('http://localhost:/esmith/SOAPWrapper:EsmithRecExtend),
then a TypeError: unpack non sequence exception is thrown.
I believe that the TypeError: unpack non sequence is resulting because
the ZSI attempts to seperate the type into (namespace, type) with the
division between the two defined by the ' : ' character, which is
found
more than once in the given namespace.
Does anyone have any ideas on how to resolve this issue?
What do I do to return the complex type and have the
ZSI client understand it?
Thanks for any help!
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
ZSI receiving complex type problem
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password