diff --git a/core/src/main/java/org/acegisecurity/util/MethodInvocationUtils.java b/core/src/main/java/org/acegisecurity/util/MethodInvocationUtils.java index b4e4883f6f..f43d76ec3f 100644 --- a/core/src/main/java/org/acegisecurity/util/MethodInvocationUtils.java +++ b/core/src/main/java/org/acegisecurity/util/MethodInvocationUtils.java @@ -72,7 +72,7 @@ public class MethodInvocationUtils { classArgs = (Class[]) list.toArray(new Class[] {}); } - return createFromClass(object.getClass(), methodName, classArgs); + return createFromClass(object.getClass(), methodName, classArgs, args); } /** @@ -84,7 +84,7 @@ public class MethodInvocationUtils { * @return a MethodInvocation, or null if there was a problem */ public static MethodInvocation createFromClass(Class clazz, String methodName) { - return createFromClass(clazz, methodName, null); + return createFromClass(clazz, methodName, null, null); } /** @@ -93,18 +93,18 @@ public class MethodInvocationUtils { * * @param clazz the class of object that will be used to find the relevant Method * @param methodName the name of the method to find - * @param args arguments that are required as part of the method signature - * + * @param classArgs arguments that are required to locate the relevant method signature + * @param args the actual arguments that should be passed to SimpleMethodInvocation * @return a MethodInvocation, or null if there was a problem */ - public static MethodInvocation createFromClass(Class clazz, String methodName, Class[] args) { + public static MethodInvocation createFromClass(Class clazz, String methodName, Class[] classArgs, Object[] args) { Assert.notNull(clazz, "Class required"); Assert.hasText(methodName, "MethodName required"); Method method; try { - method = clazz.getMethod(methodName, args); + method = clazz.getMethod(methodName, classArgs); } catch (Exception e) { return null; }