Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re^4: SOAP::Deserializer problem

by axelrose (Scribe)
on Jul 29, 2007 at 18:47 UTC ( #629421=note: print w/replies, xml ) Need Help??

in reply to Re^3: SOAP::Deserializer problem
in thread SOAP::Deserializer problem

Sorry, my first go was more complicated than necessary. Here is a second simplified go to demonstrate my problem:
#!/usr/bin/perl use warnings; use strict; use SOAP::Lite; my $xml = <<'eof'; <?xml version="1.0"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=" +elope/"> <SOAP-ENV:Header/> <SOAP-ENV:Body> <command id="1"> <message id="2"> <time time="27.07.2007-10:37:49 +0200"/> </message> </command> </SOAP-ENV:Body> </SOAP-ENV:Envelope> eof my $som = SOAP::Deserializer->deserialize($xml); print "time = ", $som->dataof('//command/message/time')->attr->{time}, + "\n"; print "done.\n";
Output is
time = 27.07.2007-10:37:49 +0200 done.
Can't call method "attr" on an undefined value at + line 23.
as soon as the id attributes of command and message are identical. I wouldn't care if I could get the raw XML from the SOAP response. Axel.

Replies are listed 'Best First'.
Re^5: SOAP::Deserializer problem
by rahed (Scribe) on Jul 31, 2007 at 10:04 UTC
    You want to avoid the use of id attributes and rename them to some other name or qualify them in the namespace.

    SOAP protocol uses id/href attribute pairs to identify its entities.

    If you specify outputxml('true') for a soap object, a method will return raw xml code.

      Thanks a lot.

      For all practical purposes this is solved now


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://629421]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2020-10-21 17:02 GMT
Find Nodes?
    Voting Booth?
    My favourite web site is:

    Results (222 votes). Check out past polls.