private ActionHandlerValidatorInstance createInstance(
      ActionHandlerValidatorClass<? extends Action<?>, ? extends Result>
          actionHandlerValidatorClass) {

    ActionHandlerValidatorInstance actionHandlerValidatorInstance = null;
    ActionValidator actionValidator =
        findActionValidator(actionHandlerValidatorClass.getActionValidatorClass());

    ActionHandler<?, ?> actionHandler =
        SpringUtils.getInstance(
            applicationContext, actionHandlerValidatorClass.getActionHandlerClass());

    if (actionValidator == null) {
      actionValidator =
          SpringUtils.getInstance(
              applicationContext, actionHandlerValidatorClass.getActionValidatorClass());
      actionHandlerValidatorInstance =
          new ActionHandlerValidatorInstance(actionValidator, actionHandler);

      validators.put(actionValidator.getClass(), actionValidator);
    } else {
      actionHandlerValidatorInstance =
          new ActionHandlerValidatorInstance(actionValidator, actionHandler);
    }

    if (actionHandlerValidatorInstance.getActionHandler() == null
        || actionHandlerValidatorInstance.getActionValidator() == null) {
      return null;
    }

    return actionHandlerValidatorInstance;
  }