http://www.perlmonks.org?node_id=319104

Sinister has asked for the wisdom of the Perl Monks concerning the following question:

Hi,

I am fidling around with RPC::XML (an xml-rpc implementation for Perl) - which seemed the most usable of xml-rpc/soap thingies out there in the perl world.

However; it is not really working...

I have a test server and client doing a simple 'system.listMethods' - but the result is empty. Now I know the documentation says:

"If the return value from send_request is not a reference, then it can only mean an error on the client-side (a local problem with the arguments and/or syntax, or a transport problem)."

But I don't realy see what's wrong with this code:
#!/opt/perl/bin/perl -Tl use warnings; use strict; use RPC::XML::Client; my $client = RPC::XML::Client->new('http://localhost:8000/'); my $result = $client->send_request('system.listMethods'); die $result unless defined($result); die $result; die $result->code . ': ' . $result->string if $result->is_fault; print join(' ', @{$result->value}), "\n";
This gracefully dies with: Died at ./client.pl line 11.

What's more; using tcpflow (i know - evil) i can see a succesfull POST including a good return containing valid XML. (tried to validate it with XML::Parser, which works like a charm)

So a transport problem doesn't seem to be the problem either.

Any suggestions on how I can (tackle || find the root of) this problem?


er formait hyarya.
-- "Life is a house and the next tornado is never far away"
-- "lovely by nature"