in reply to Re^2: Problem with SOAP::Lite (WSDL) Response (Deserializer / References)
in thread Problem with SOAP::Lite (WSDL) Response (Deserializer / References)
I tried it, but now i get only: $VAR1 = '0'; I think it should be a SOM-Object, but it won't be one.
Yeah, its not that I don't believe you, but that is highly unlikely thing to happen, especially given what you reported for %result
See, kinda (this too SOAP::Lite problem, Why can't SOAP::Lite deserialize its own output? )
#!/usr/bin/perl -- use strict; use warnings; use SOAP::Lite +trace => 'debug', readable => 1; print "\$SOAP::Lite::VERSION: $SOAP::Lite::VERSION\n"; my $soap = SOAP::Lite -> uri('http://127.0.0.1/MyModule') -> proxy('http://127.0.0.1:1203') ;;;;;;;;; $soap->envprefix('SOAP-ENV'); $soap->encprefix('SOAP-ENC'); $soap->soapversion('1.1'); my $xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<SOAP-ENV:Enve +lope SOAP-ENV:encodingStyle=\"http://schemas.xmlsoap.org/soap/encodin +g/\" xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" xml +ns:SOAP-ENC=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:xsd=\ +"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/200 +1/XMLSchema-instance\">\n<SOAP-ENV:Body>\n<ns1:SOAP_GetFirmenlisteRes +ponse xmlns:ns1=\"http://www.4d.com/namespace/default\">\n\t<ERRORNUM + xsi:type=\"xsd:int\">0</ERRORNUM>\n\t<ERRORTEXT xsi:type=\"xsd:strin +g\">\n</ERRORTEXT>\n\t<LISTE_KDLF_NR_ALS_IDS href=\"#ref-1\"/>\t<LIST +E_SUCHNAMEN href=\"#ref-2\"/>\t<LISTE_LFD_NR href=\"#ref-3\"/>\t<LIST +E_TIMESTAMP_GEAENDERT href=\"#ref-4\"/>\t<LISTE_TIMESTAMP_ERZEUGT hre +f=\"#ref-5\"/>\n</ns1:SOAP_GetFirmenlisteResponse>\n<SOAP-ENC:Array i +d=\"ref-1\" SOAP-ENC:arrayType=\"xsd:string[4]\">\n<item1>19288</item +1>\n<item2>19289</item2>\n<item3>60107</item3>\n<item4>71897</item4>\ +n</SOAP-ENC:Array>\n<SOAP-ENC:Array id=\"ref-2\" SOAP-ENC:arrayType=\ +"xsd:string[4]\">\n<item1>Blabla1</item1>\n<item2>Blabla2</item2>\n<i +tem3>Bla M\x{fc}nchen</item3>\n<item4>Bla\x{fc}rm B\x{c4}R</item4>\n< +/SOAP-ENC:Array>\n<SOAP-ENC:Array id=\"ref-3\" SOAP-ENC:arrayType=\"x +sd:int[4]\">\n<item1>-8423</item1>\n<item2>-8426</item2>\n<item3>-842 +5</item3>\n<item4>-8428</item4>\n</SOAP-ENC:Array>\n<SOAP-ENC:Array i +d=\"ref-4\" SOAP-ENC:arrayType=\"xsd:string[4]\">\n<item1>2015-11-23T +09:32:23</item1>\n<item2>2015-11-26T14:55:52</item2>\n<item3>2015-11- +26T08:07:26</item3>\n<item4>2015-11-27T09:26:25</item4>\n</SOAP-ENC:A +rray>\n<SOAP-ENC:Array id=\"ref-5\" SOAP-ENC:arrayType=\"xsd:string[4 +]\">\n<item1>2015-11-23T09:30:54</item1>\n<item2>2015-11-26T14:52:06< +/item2>\n<item3>2015-11-25T10:33:27</item3>\n<item4>2015-11-27T09:24: +05</item4>\n</SOAP-ENC:Array>\n</SOAP-ENV:Body>\n</SOAP-ENV:Envelope> +\n"; utf8::upgrade($xml); ## grr $soap->deserializer->deserialize( $xml ); use Data::Dumper(); print Data::Dumper::Dumper( $soap->deserializer->deserialize( $xml ) ) +; __END__ $SOAP::Lite::VERSION: 1.19 $VAR1 = bless( { '_content' => [ 'SOAP-ENV:Envelope', { 'xmlns:xsi' => 'http://www.w3.org/2 +001/XMLSchema-instance', 'xmlns:SOAP-ENC' => 'http://schemas +.xmlsoap.org/soap/encoding/', 'xmlns:SOAP-ENV' => 'http://schemas +.xmlsoap.org/soap/envelope/', 'xmlns:xsd' => 'http://www.w3.org/2 +001/XMLSchema', 'SOAP-ENV:encodingStyle' => 'http:/ +/schemas.xmlsoap.org/soap/encoding/' }, [ [ 'SOAP-ENV:Body', {}, [ [ 'ns1:SOAP_GetFirmenlisteRespo +nse', { 'xmlns:ns1' => 'http://www. +4d.com/namespace/default' }, [ [ 'ERRORNUM', { 'xsi:type' => 'xsd:int' }, '0', undef, '0', 'ERRORNUM', { 'xsi:type' => 'xsd:int' +, '{http://www.w3.org/200 +1/XMLSchema-instance}type' => '{http://www.w3.org/2001/XMLSchema}int' } ], [ 'ERRORTEXT', { 'xsi:type' => 'xsd:stri +ng' }, ' ', undef, ' ', 'ERRORTEXT', { 'xsi:type' => 'xsd:stri +ng', '{http://www.w3.org/200 +1/XMLSchema-instance}type' => '{http://www.w3.org/2001/XMLSchema}stri +ng' } ], [ 'LISTE_KDLF_NR_ALS_IDS', { 'href' => '#ref-1' }, '', undef, [ '19288', '19289', '60107', '71897' ], 'LISTE_KDLF_NR_ALS_IDS', {} ], [ 'LISTE_SUCHNAMEN', { 'href' => '#ref-2' }, '', undef, [ 'Blabla1', 'Blabla2', "Bla M\x{fc}nchen", "Bla\x{fc}rm B\x{c4}R" ], 'LISTE_SUCHNAMEN', {} ], [ 'LISTE_LFD_NR', { 'href' => '#ref-3' }, '', undef, [ '-8423', '-8426', '-8425', '-8428' ], 'LISTE_LFD_NR', {} ], [ 'LISTE_TIMESTAMP_GEAENDER +T', { 'href' => '#ref-4' }, '', undef, [ '2015-11-23T09:32:23', '2015-11-26T14:55:52', '2015-11-26T08:07:26', '2015-11-27T09:26:25' ], 'LISTE_TIMESTAMP_GEAENDER +T', {} ], [ 'LISTE_TIMESTAMP_ERZEUGT' +, { 'href' => '#ref-5' }, '', undef, [ '2015-11-23T09:30:54', '2015-11-26T14:52:06', '2015-11-25T10:33:27', '2015-11-27T09:24:05' ], 'LISTE_TIMESTAMP_ERZEUGT' +, {} ] ], undef, { 'LISTE_TIMESTAMP_ERZEUGT' = +> $VAR1->{'_content'}[2][0][2][0][2][6][4], 'ERRORTEXT' => ' ', 'LISTE_LFD_NR' => $VAR1->{' +_content'}[2][0][2][0][2][4][4], 'LISTE_SUCHNAMEN' => $VAR1- +>{'_content'}[2][0][2][0][2][3][4], 'ERRORNUM' => '0', 'LISTE_TIMESTAMP_GEAENDERT' + => $VAR1->{'_content'}[2][0][2][0][2][5][4], 'LISTE_KDLF_NR_ALS_IDS' => +$VAR1->{'_content'}[2][0][2][0][2][2][4] }, '{http://www.4d.com/namespace +/default}SOAP_GetFirmenlisteResponse', {} ], [ 'SOAP-ENC:Array', { 'id' => 'ref-1', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' }, [ [ 'item1', {}, '19288', undef, '19288', 'item1', {} ], [ 'item2', {}, '19289', undef, '19289', 'item2', {} ], [ 'item3', {}, '60107', undef, '60107', 'item3', {} ], [ 'item4', {}, '71897', undef, '71897', 'item4', {} ] ], undef, $VAR1->{'_content'}[2][0][2][ +0][2][2][4], '{http://schemas.xmlsoap.org/ +soap/encoding/}Array', { 'id' => 'ref-1', '{http://schemas.xmlsoap.or +g/soap/encoding/}arrayType' => '{http://www.w3.org/2001/XMLSchema}str +ing[4]', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' } ], [ 'SOAP-ENC:Array', { 'id' => 'ref-2', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' }, [ [ 'item1', {}, 'Blabla1', undef, 'Blabla1', 'item1', {} ], [ 'item2', {}, 'Blabla2', undef, 'Blabla2', 'item2', {} ], [ 'item3', {}, "Bla M\x{fc}nchen", undef, "Bla M\x{fc}nchen", 'item3', {} ], [ 'item4', {}, "Bla\x{fc}rm B\x{c4}R", undef, "Bla\x{fc}rm B\x{c4}R", 'item4', {} ] ], undef, $VAR1->{'_content'}[2][0][2][ +0][2][3][4], '{http://schemas.xmlsoap.org/ +soap/encoding/}Array', { 'id' => 'ref-2', '{http://schemas.xmlsoap.or +g/soap/encoding/}arrayType' => '{http://www.w3.org/2001/XMLSchema}str +ing[4]', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' } ], [ 'SOAP-ENC:Array', { 'id' => 'ref-3', 'SOAP-ENC:arrayType' => 'xs +d:int[4]' }, [ [ 'item1', {}, '-8423', undef, '-8423', 'item1', {} ], [ 'item2', {}, '-8426', undef, '-8426', 'item2', {} ], [ 'item3', {}, '-8425', undef, '-8425', 'item3', {} ], [ 'item4', {}, '-8428', undef, '-8428', 'item4', {} ] ], undef, $VAR1->{'_content'}[2][0][2][ +0][2][4][4], '{http://schemas.xmlsoap.org/ +soap/encoding/}Array', { 'id' => 'ref-3', '{http://schemas.xmlsoap.or +g/soap/encoding/}arrayType' => '{http://www.w3.org/2001/XMLSchema}int +[4]', 'SOAP-ENC:arrayType' => 'xs +d:int[4]' } ], [ 'SOAP-ENC:Array', { 'id' => 'ref-4', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' }, [ [ 'item1', {}, '2015-11-23T09:32:23', undef, '2015-11-23T09:32:23', 'item1', {} ], [ 'item2', {}, '2015-11-26T14:55:52', undef, '2015-11-26T14:55:52', 'item2', {} ], [ 'item3', {}, '2015-11-26T08:07:26', undef, '2015-11-26T08:07:26', 'item3', {} ], [ 'item4', {}, '2015-11-27T09:26:25', undef, '2015-11-27T09:26:25', 'item4', {} ] ], undef, $VAR1->{'_content'}[2][0][2][ +0][2][5][4], '{http://schemas.xmlsoap.org/ +soap/encoding/}Array', { 'id' => 'ref-4', '{http://schemas.xmlsoap.or +g/soap/encoding/}arrayType' => '{http://www.w3.org/2001/XMLSchema}str +ing[4]', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' } ], [ 'SOAP-ENC:Array', { 'id' => 'ref-5', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' }, [ [ 'item1', {}, '2015-11-23T09:30:54', undef, '2015-11-23T09:30:54', 'item1', {} ], [ 'item2', {}, '2015-11-26T14:52:06', undef, '2015-11-26T14:52:06', 'item2', {} ], [ 'item3', {}, '2015-11-25T10:33:27', undef, '2015-11-25T10:33:27', 'item3', {} ], [ 'item4', {}, '2015-11-27T09:24:05', undef, '2015-11-27T09:24:05', 'item4', {} ] ], undef, $VAR1->{'_content'}[2][0][2][ +0][2][6][4], '{http://schemas.xmlsoap.org/ +soap/encoding/}Array', { 'id' => 'ref-5', '{http://schemas.xmlsoap.or +g/soap/encoding/}arrayType' => '{http://www.w3.org/2001/XMLSchema}str +ing[4]', 'SOAP-ENC:arrayType' => 'xs +d:string[4]' } ] ], undef, { 'Array' => [ $VAR1->{'_content'}[ +2][0][2][0][2][2][4], $VAR1->{'_content'}[ +2][0][2][0][2][3][4], $VAR1->{'_content'}[ +2][0][2][0][2][4][4], $VAR1->{'_content'}[ +2][0][2][0][2][5][4], $VAR1->{'_content'}[ +2][0][2][0][2][6][4] ], 'SOAP_GetFirmenlisteResponse' = +> $VAR1->{'_content'}[2][0][2][0][4] }, '{http://schemas.xmlsoap.org/soap +/envelope/}Body', {} ] ], undef, { 'Body' => $VAR1->{'_content'}[2][0] +[4] }, '{http://schemas.xmlsoap.org/soap/env +elope/}Envelope', { 'SOAP-ENV:encodingStyle' => 'http:/ +/schemas.xmlsoap.org/soap/encoding/', '{http://schemas.xmlsoap.org/soap/e +nvelope/}encodingStyle' => 'http://schemas.xmlsoap.org/soap/encoding/ +' } ], '_context' => undef, '_current' => [ $VAR1->{'_content'} ] }, 'SOAP::SOM' );
|
|---|