rjray / rpc-xml
- Source
- Commits
- Network (0)
- Issues (0)
- Downloads (40)
- Wiki (1)
- Graphs
-
Tag:
v0_56
rjray (author)
Thu Dec 09 01:19:25 -0800 2004
rpc-xml /
| name | age | message | |
|---|---|---|---|
| |
.cvsignore | ||
| |
ChangeLog | ||
| |
ChangeLog.xml | ||
| |
MANIFEST | ||
| |
Makefile.PL | ||
| |
README | ||
| |
README.apache | ||
| |
README.apache2 | Mon Jan 27 03:27:38 -0800 2003 | |
| |
ToDo | Mon Jan 27 02:45:29 -0800 2003 | |
| |
etc/ | ||
| |
ex/ | Sat Jan 19 00:28:49 -0800 2002 | |
| |
lib/ | ||
| |
methods/ | ||
| |
spec.in | ||
| |
t/ |
README
RPC::XML - An implementation of XML-RPC
Version: 0.56
WHAT IS IT
The RPC::XML package is an implementation of XML-RPC. The module provides
classes for sample client and server implementations, a server designed as an
Apache location-handler, and a suite of data-manipulation classes that are
used by them.
USING RPC::XML
There are not any pre-packaged executables in this distribution (except for a
utility tool). Client usage will usually be along the lines of:
use RPC::XML::Client;
...
my $client = new RPC::XML::Client
'http://www.oreillynet.com/meerkat/xml-rpc/server.php';
my $req = RPC::XML::request->new('meerkat.getChannelsBySubstring', 'perl');
my $res = $client->send_request($req);
# This returns an object of the RPC::XML::response class. This double-call
# of value() first gets a RPC::XML::* data object from the response, then
# the actual data from it:
my $value = $res->value->value;
Running a simple server is not much more involved:
use RPC::XML::Server;
...
my $srv = new RPC::XML::Server (host => 'localhost',
port => 9000);
# You would then use $srv->add_method to add some remotely-callable code
...
$srv->accept_loop; # Stays in an accept/connect loop
BUILDING/INSTALLING
This package is set up to configure and build like a typical Perl extension.
To build:
perl Makefile.PL
make && make test
If RPC::XML passes all tests, then:
make install
You may need super-user access to install.
PROBLEMS/BUG REPORTS
Please send any reports of problems or bugs to rjray@blackperl.com
SEE ALSO
XML-RPC: http://www.xmlrpc.com/spec
The Artistic License: http://www.opensource.org/licenses/artistic-license.php
CHANGES
etc/make_method:
Small change to the generated XML, to add an "encoding" setting to the
XML preamble.
t/10_data.t:
t/60_net_server.t:
Very minor changes, to make the test work with older Perls and/or Test
modules.
lib/RPC/XML.pm:
Add "encoding" settings to all XML preambles, and make the scalar
variable "$RPC::XML::ENCODING" an importable symbol, should users want
to change the default encoding. Not currently documented, since this is
technically a break from the XML-RPC spec.
Makefile.PL:
t/50_client.t:
Traced a bug that was causing test failures in 50_client.t to a bug in
version 5.800 of the LWP package. Now, Makefile.PL explicitly requires
5.801 or higher, and the test suite skips the two tests that are broken
by it, in cases where the system is still at 5.800 or older.
lib/RPC/XML/Client.pm:
Adding the encoding to the request and response blocks messed up some
of the tests in the 10_data.t and 15_serialize.t suites. Fixed.
README:
etc/make_method:
etc/rpc-method.dtd:
lib/Apache/RPC/Server.pm:
lib/Apache/RPC/Status.pm:
lib/RPC/XML.pm:
lib/RPC/XML/Client.pm:
lib/RPC/XML/Function.pm:
lib/RPC/XML/Method.pm:
lib/RPC/XML/Parser.pm:
lib/RPC/XML/Procedure.pm:
lib/RPC/XML/Server.pm:
Changed all URL references to the Artistic License from the (no longer
valid) language.perl.com version to the (current, working)
www.opensource.org one.

