QuteXR: QT based XML-RPC library.
This library is a simple QT 3.1 based XML-RPC library.
The library includes some example code, including a client and server for
the validation spec.
You can access files and other information at the
sourceforge project page.
Find the class documentation here.
Short FAQ:
- Q: Why should I use XML-RPC rather than <rpc technology x>:
A: Maybe you shouldn't. Pick the right tool for the job. There is a nice overview
here.
In my opinion, the answer is: if you need to connect a lot of different parts which are using
many different languages (e.g. C,Perl,PHP,Java) and are exchanging relatively simple data,
then XML-RPC is likely to be the best choice.
-
Q: What is the license? Where can I use this code?
A: The license is the GNU GPL. Some answers
to frequently asked questions about the GPL may be found here. The short answer is, you cannot use this in non-free software. In order to
use this library, your software must also be free (I don't want to share with you if you
don't want to share with me).
-
Q: Isn't XML-RPC really slow and overly verbose?
A: XML-RPC uses XML and HTTP because they are supported on almost every platform. The goal is
interoperability, not speed. That having been said, QuteXR supports compressed (deflate) HTTP
responses, and it keeps HTTP connections open in order to reduce the number of packets that need to
be sent for each methodCall. It should be a fast XML-RPC implementation.
-
Q: Do we need another XML-RPC library?
A: You may not, but I saw a need for a native QT XML-RPC library which used QT's native classes
and signals and slots mechanism. If you are not using QT in your project, this library is probably
not for you. If you are using QT, you will find this library easy to integrate into your project.
-
Q: Why do I need QT 3.1 or greater to use this library?
A: QT 3.1 added the general HTTP client features to the QHttp class. Without them, I would need
to implement them myself, and I don't want to do that.