diff --git a/org.boris.xlloop/java/src/org/boris/xlloop/util/XLoperObjectConverter.java b/org.boris.xlloop/java/src/org/boris/xlloop/util/XLoperObjectConverter.java index 06aa238..3b35800 100644 --- a/org.boris.xlloop/java/src/org/boris/xlloop/util/XLoperObjectConverter.java +++ b/org.boris.xlloop/java/src/org/boris/xlloop/util/XLoperObjectConverter.java @@ -515,7 +515,14 @@ private Object convertVector(XLArray arr, Class hint) { } val = darr; - } else { + } else if (clazz.isArray()) { + Class underlyingType = clazz.getComponentType(); + Object objectArray = Array.newInstance(underlyingType, xlArray.rows); + for (int i = 0; i < xlArray.rows; ++i) { + Array.set(objectArray, i, this.createFrom(xlArray.get(i), underlyingType)); + } + value = objectArray; + } else { String str = arr.getString(0); val = registry.get(str); }