You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jaxme-dev@ws.apache.org by Jochen Wiedmann <jo...@freenet.de> on 2004/09/12 22:25:37 UTC
Announce: Generator for XML-RPC Clients
Hi,
I'd like to announce the availability of the
XmlRpcClientGenerator
a tool for generation of clients for Apache XML-RPC.
What it does: Given a set of server classes (either Java sources or
compiled classes), it generates a corresponding set of client classes
with the same signature and an XmlRpcHandler, that dispatches incoming
XML-RPC calls to the server classes. For example, if you have the
following server class:
public class Calculator {
public int add(int i1, int i2) {
return i1 + i2;
}
public double multiply(double d1, double d2) {
return d1 * d2;
}
}
The generated client class will look similar to
public class Calculator {
private XmlRpcCaller caller;
public Calculator(caller) {
this.caller = caller;
}
public int add(int i1, int i2) {
Vector v = new Vector();
v.add(new Integer(i1));
v.add(new Integer(i2));
XmlRpcClient c = new XmlRpcClient(url);
Object o = caller.xmlRpcCall("Calculator.add", v);
return ((Integer) o).intValue();
}
public double add(double d1, double d2) {
Vector v = new Vector();
v.add(new Double(d1));
v.add(new Double(d2));
Object o = caller.xmlRpcCall("Calculator.add", v);
return ((Double) o).doubleValue();
}
}
In other words, by using the generator, your XML-RPC client becomes
- type safe
- better readable (no need for casting primitives, and the like)
- marginally faster (no reflection on the server side)
See
http://cvs.apache.org/viewcvs.cgi/ws-jaxme/src/documentation/content/xdocs/js/apps/xmlrpc.xml
for the generators docs. The generator is currently only available as a
part of the JaxMe Java sourge generator framework's CVS HEAD version.
See http://ws.apache.org/jaxme/js for details on JaxMeJS. See
http://ws.apache.org/jaxme/downloads.cgi for instructions on how to
checkout the CVS HEAD.
Jochen
--
http://lilypie.com/baby1/050423/1/5/1/+1
---------------------------------------------------------------------
To unsubscribe, e-mail: jaxme-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: jaxme-dev-help@ws.apache.org