diff --git a/janos-core/src/main/java/org/apache/olingo/odata2/janos/processor/core/extension/ExtensionProcessor.java b/janos-core/src/main/java/org/apache/olingo/odata2/janos/processor/core/extension/ExtensionProcessor.java index 1d5c60d..72be025 100644 --- a/janos-core/src/main/java/org/apache/olingo/odata2/janos/processor/core/extension/ExtensionProcessor.java +++ b/janos-core/src/main/java/org/apache/olingo/odata2/janos/processor/core/extension/ExtensionProcessor.java @@ -14,6 +14,7 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Proxy; +import java.util.ArrayList; import java.util.Arrays; /** @@ -148,7 +149,11 @@ public Object invoke(Object o, Method method, Object[] objects) throws Throwable // XXX: change if (isValid(method)) { invokeMethod = method; - invokeParameters = Arrays.copyOf(objects, objects.length); + if (objects != null) { + invokeParameters = Arrays.copyOf(objects, objects.length); + } else { + invokeParameters = new Object[0]; + } } else { throw new RuntimeException("Invalid class '" + method.getDeclaringClass() + "' can not wrapped for asynchronous processing.");