From: Robert L. <Rob...@co...> - 2008-12-11 18:48:00
|
Have you tried \@data? That probably won't work. @data = map { SOAP::Data->value($_) } @data; Try that... Rob Thorsten Harms wrote: > Hi Frederic, > > thanks for the hint, but unfortunately it doesn't work... > > The Tivoli Data Integrator (ITDI) still doesn't recognize the array. > The guy who developed the service of the ITDI said, it must receive an > array of PLZInfos. But he is all into java and autogenerated code, so > he is not much of a help... > > I'm runnin' a little short on ideas (and time...) right now. :-( > > Bye, > > Thorsten > > ------------------------------------------------------------------------ > *Von:* Frédéric Solvignon [mailto:Fre...@lo...] > *Gesendet:* Mi 10.12.2008 16:35 > *An:* Thorsten Harms > *Betreff:* RE: [Soaplite-devel] Problems with SOAP::Lite client > > Hi, > > Try this : > > SOAP::Data->type("tns2:PLZInfo")->name("plzinfos" => > \SOAP::Data->value(@data) )); > > > > > > *De :* Thorsten Harms [mailto:tho...@ar...] > *Envoyé :* mercredi 10 décembre 2008 16:12 > *À :* soa...@li... > *Objet :* [Soaplite-devel] Problems with SOAP::Lite client > > > > Hi, > > > > I'm currently writing a client using SOAP::Lite, that connects to an > IBM Tivoli Data Integrator. > > > > Here are some excerpts from the wsdl-file: > > ... > <element name="updatePLZInformationen"> > <complexType> > <sequence> > <element name="clientid" nillable="true" > type="xsd:string" /> > <element name="securitytoken" nillable="true" > type="xsd:string" /> > <element maxOccurs="unbounded" minOccurs="0" > name="plzinfos" type="tns2:PLZInfo" /> > </sequence> > </complexType> > </element> > ... > <complexType name="PLZInfo"> > <sequence> > <element name="kurzname" nillable="true" > type="xsd:string" /> > <element name="plz" nillable="true" > type="xsd:string" /> > <element name="stadt" nillable="true" > type="xsd:string" /> > <element name="status" nillable="true" > type="xsd:string" /> > <element name="typ" nillable="true" > type="xsd:string" /> > <element name="zusatz" nillable="true" > type="xsd:string" /> > </sequence> > </complexType> > ... > > > > And here is my code: > > ... > while(...) { > # Hash zusammenbasteln > $hash{"kurzname"} = $kurzname; > $hash{"plz"} = $plz; > $hash{"stadt"} = $stadt; > $hash{"status"} = $status; > $hash{"typ"} = $typ; > $hash{"zusatz"} = $zusatz; > > push(@ary,%hash); > } > > eval { > $dss->updatePLZInformationen(@ary); > }; > ... > sub updatePLZInformationen() { > my @data = shift(); > > my $plz = SOAP::Lite > -> service('file:/path/Service.wsdl'); > > $plz->updatePLZInformationen(SOAP::Data->type("xsd:string")->name("clientid" > => "foo")->value, > SOAP::Data->type("xsd:string")->name("securitytoken" => > "bar")->value, > SOAP::Data->type("tns2:PLZInfo")->name("plzinfos" => @data)); > } > > My problem is, that the last argument ("plzinfos") does not seem to be > correct, because the ITDI does not recognize it as an array. > > > > Any hints, tipps, etc. would be highly appreciated :-) > > > > Thanks in advance, > > > > Thorsten > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. > The future of the web can't happen without you. Join us at MIX09 to help > pave the way to the Next Web now. Learn more and register at > http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ > ------------------------------------------------------------------------ > > _______________________________________________ > Soaplite-devel mailing list > Soa...@li... > https://lists.sourceforge.net/lists/listinfo/soaplite-devel > |