AbstractCommand.saveCurrentCommand(commandInfo.getCommandInstance());
// Call the command's entry point method reflectively
Object obj = Modifier.isStatic(method.getModifiers()) ? null
: targetClass.newInstance();
AccessController.doPrivileged(new InvokeAction(method, obj,
args));
} finally {
// This clears the current command to prevent possible leakage of
// commands arguments, etc to the next command.
AbstractCommand.retrieveCurrentCommand();