Skip to content
ombre42 edited this page Jun 4, 2012 · 11 revisions

Table of Contents

Return Types

Java type Python type
java.lang.String, char[] string
int, java.lang.Integer, short, java.lang.Short, byte, java.lang.Byte int
long, java.lang.Long string
double, java.lang.Double, float, java.lang.Float float
boolean, java.lang.Boolean bool
java.util.List list
arrays of primitive types except char, arrays of wrapped primitives list
java.util.Map dict
All primitive types and their corresponding wrapper classes are supported singularly or as arrays. However, to conform to the XML-RPC specifications, long and Long are returned as strings. long[] and Long[] are returned as arrays of strings (lists in Robot Framework).

Argument Types

Java type Python type
java.lang.String string
int, java.lang.Integer int
double, java.lang.Double float
boolean, java.lang.Boolean bool
java.util.List list, tuple
java.util.Map dict

Dynamic API Libraries

Dynamic libraries are responsible for dispatching run_keyword calls. jrobotremoteserver, therefore, has no way of determining the argument types. Do not mix arrays and lists because of this. jrobotremoteserver will send array-type (XML-RPC) arguments as arrays first. If that fails due to an IllegalArgumentException, it will convert arrays to ArrayLists and invoke run_Keyword/runKeyword again.

Static API Libraries

Public methods in the user class and its super classes are considered keywords. Methods from Object.class that are not overridden are excluded.

Currently, jrobotremoteserver does not support using multiple methods to implement a single keyword as seen the user guide.

Clone this wiki locally