diff --git a/src/main/java/org/apache/sling/scripting/sightly/impl/compiler/CompileTimeObjectModel.java b/src/main/java/org/apache/sling/scripting/sightly/impl/compiler/CompileTimeObjectModel.java
index af8bfc7..a01ad50 100644
--- a/src/main/java/org/apache/sling/scripting/sightly/impl/compiler/CompileTimeObjectModel.java
+++ b/src/main/java/org/apache/sling/scripting/sightly/impl/compiler/CompileTimeObjectModel.java
@@ -16,6 +16,7 @@
  ******************************************************************************/
 package org.apache.sling.scripting.sightly.impl.compiler;
 
+import java.lang.reflect.Array;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
@@ -281,11 +282,10 @@
     }
 
     private static Object getField(Object obj, String property) {
-        if (obj instanceof Object[] && "length".equals(property)) {
-            // Working around this limitation: http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getFields%28%29
-            return ((Object[]) obj).length;
-        }
         Class<?> cls = obj.getClass();
+        if (cls.isArray() && "length".equals(property)) {
+            return Array.getLength(obj);
+        }
         try {
             Field field = cls.getDeclaredField(property);
             return field.get(obj);
