This one shows up on "cpants" ... and in this report I describe the solution:
t/xmlrpc_http.t ... 1/2453 Can't call method "as_string" on an undefined value at t/lib/
Support.pm line 661.
Obviously this goes back to XML::RPC because as you well know the two lines are:
my $request = RPC::XML::request->new(@request_params);
$input_xml = $request->as_string;
...
The installed version of XML::RPC is 0.9.
And the problem(!) is that "RPC::XML::request->new()" requires TWO parameters, the first one
being the method-name. For example:
==
perl -e 'use RPC::XML; my @parms=[]; my $f=RPC::XML::request->new(@parms); use
Data::Dumper; print Data::Dumper->Dump([$f], ["f"]);'
$f = undef;
== vs. this:
perl -e 'use RPC::XML; my @parms=[]; my $f=RPC::XML::request->new("foo",@parms); use
Data::Dumper; print Data::Dumper->Dump([$f], ["f"]);'
$f = bless( {
'name' => 'foo',
'args' => [
bless( [], 'RPC::XML::array' )
]
}, 'RPC::XML::request' );
==
So it would be really nice if you could fix this test so that the installed version doesn't throw
an error. Although it is clear that you can "force" the installation without harm in this case, I
don't like to force things.