<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi All,<br>
<br>
As many other people, I encountered problem to build request with
nested data.<br>
<br>
My WSDL file which contains:<br>
<br>
<small><tt> <xsd:complexType name="ArrayOfArtifact"><br>
<xsd:complexContent><br>
<xsd:restriction base="SOAP-ENC:Array"><br>
<xsd:attribute ref="SOAP-ENC:arrayType"
wsdl:arrayType="tns:Artifact[]"/><br>
</xsd:restriction><br>
</xsd:complexContent><br>
</xsd:complexType><br>
...<br>
<xsd:complexType name="Criteria"><br>
<xsd:sequence><br>
<xsd:element name="field_name" type="xsd:string"/><br>
<xsd:element name="field_value" type="xsd:string"/><br>
<xsd:element name="operator" type="xsd:string"/><br>
</xsd:sequence><br>
</xsd:complexType><br>
...<br>
<message name="getArtifactsRequest"><br>
<part name="sessionKey" type="xsd:string"/><br>
<part name="group_id" type="xsd:int"/><br>
<part name="group_artifact_id" type="xsd:int"/><br>
<b> <big><font color="#ff0000"><part name="criteria"
type="tns:ArrayOfCriteria"/></font></big></b><br>
<part name="offset" type="xsd:int"/><br>
<part name="max_rows" type="xsd:int"/><br>
</message><br>
...<br>
<message name="getArtifactsResponse"><br>
<part name="return" type="tns:ArrayOfArtifact"/><br>
</message></tt></small><br>
<br>
I build a <tt><i>getArtifacts</i> </tt>request as shown below, and it
is accepted but criterias (in red) are never taken into account.<br>
<tt>my $result = $soap->getArtifacts($session_hash,<br>
102,<br>
109,<font color="#ff0000"><b><br>
[ { field_name=>'status_id',
operator=>'=', field_value=>'1' } ]</b></font>,<br>
0,<br>
0);</tt><br>
<br>
A very similar code works properly in PHP (cf. nusoap.php) but I would
prefer to use Perl. See in attachment XML requests generated
respectively from PHP and from Perl.<br>
<br>
I performed a lot of other attempts (use Tie:IxHash, use <a
class="moz-txt-link-freetext" href="SOAP::WSDL">SOAP::WSDL</a>)
but I encountered more additional problems rather than solution (eg.
non-nul proxy requested).<br>
<br>
How should I proceed?<br>
<br>
Thanks in advance,<br>
Olivier<br>
<br>
<br>
<br>
</body>
</html>
|