|
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
>
|