Type Mapping between XML-RPC and Java

The following table explains how data types are converted between their XML-RPC representation and Java.

Note that the automatic invocation mechanism expects your classes to take the primitive data types as input parameters. If your class defines any other types as input parameters (including java.lang.Integer, long, float), that method won't be usable from XML-RPC unless you write your own handler.

For return values, both the primitive types and their wrapper classes work fine.

XML-RPC data type Data Types generated by the Parser Types expected by the Invoker as input parameters of RPC handlers
<i4> or <int> java.lang.Integer int
<boolean> java.lang.Boolean boolean
<string> java.lang.String java.lang.String
<double> java.lang.Double double
<dateTime.iso8601> java.util.Date java.util.Date
<struct> java.util.Hashtable java.util.Hashtable
<array> java.util.Vector java.util.Vector
<base64> byte[ ] byte[ ]