protected Object innerExecute(Rose rose) throws Throwable {
Invocation inv = rose.getInvocation();
// creates parameter binding result (not bean, just simple type, like int, Integer, int[] ...
ParameterBindingResult paramBindingResult = new ParameterBindingResult(inv);
String paramBindingResultName = MODEL_KEY_PREFIX + paramBindingResult.getObjectName();
inv.addModel(paramBindingResultName, paramBindingResult);
// resolves method parameters, adds the method parameters to model
Object[] methodParameters = methodParameterResolver.resolve(inv, paramBindingResult);
((InvocationBean) inv).setMethodParameters(methodParameters);