Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re: Starting on SOAP

by trwww (Priest)
on Nov 13, 2007 at 03:39 UTC ( #650431=note: print w/replies, xml ) Need Help??

in reply to Starting on SOAP


What I did was read the books Programming Web Services with SOAP and Programming Web Services with Perl. Cover to cover those books and you'll be all set.

Here is a bit of code to get you started. You'll need to install the RPC::XML and SOAP::Lite distros.

It is not SOAP, it is XMLRPC. But if you read the books above, you'll see that XMLRPC is just a subset of SOAP. Be sure to run the client with LWP::Debug turned on so you see the HTTP request/response cycle.

On machine A:

$ cat use warnings; use strict; use RPC::XML::Server; my $server = RPC::XML::Server->new(port => 9000); $server->add_method({ name => 'test.hello', signature => [ q|string string| ], help => 'this method greets an argument... cool, huh?', code => sub { my($server, $str) = @_; return( "Hello, $str!" ); } }); print "listening on port 9000\n"; $server->server_loop; [trwww@waveright rpc]$ perl listening on port 9000

On Machine X:

$ http://localhost:9000/ Usage: method[(parameters)] > system.listMethods('test') --- XMLRPC RESULT --- [ 'test.hello' ] > system.methodHelp('test.hello') --- XMLRPC RESULT --- 'this method greets an argument... cool, huh?' > system.methodSignature('test.hello') --- XMLRPC RESULT --- [ [ 'string', 'string' ] ] > test.hello('perlmonks') --- XMLRPC RESULT --- 'Hello, perlmonks!'



Log In?

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

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2020-01-22 02:14 GMT
Find Nodes?
    Voting Booth?