Magento 添加SOAP/XML-RPC用户和角色时出错

Magento 添加SOAP/XML-RPC用户和角色时出错,magento,magento-1.9,magento-1.9.1,Magento,Magento 1.9,Magento 1.9.1,我曾试图通过Magento Connect工具将Magento 1.9.0.1升级到1.9.1,但这似乎阻止了我为API访问添加用户和角色 以下是错误: 无效的方法Mage\u Admin\u Model\u User::validateCurrentPasswordArray 有人遇到过这个问题吗?这个问题是可以解决的 1打开文件app/code/core/Mage/Adminhtml/Controller/Action.php 2之后,查看第395行上的函数,并将internel代码注释到该

我曾试图通过Magento Connect工具将Magento 1.9.0.1升级到1.9.1,但这似乎阻止了我为API访问添加用户和角色

以下是错误:

无效的方法Mage\u Admin\u Model\u User::validateCurrentPasswordArray


有人遇到过这个问题吗?

这个问题是可以解决的

1打开文件app/code/core/Mage/Adminhtml/Controller/Action.php 2之后,查看第395行上的函数,并将internel代码注释到该行中

受保护函数\u validateCurrentPassword$password{

   /*$user = Mage::getSingleton('admin/session')->getUser();
    return $user->validateCurrentPassword($password);*/

}

我最近在将Magento升级到更新版本的1.9后遇到了同样的问题

应该注意的是,您永远不应该修改核心文件,密码验证也不应该被删除

在我个人的例子中,我将原来的函数恢复到核心文件中,但是,您可以同样轻松地扩展Mage_Admin_Model_用户类

我使用的函数的版本可以在下面找到

/**
 * Validate password against current user password
 * Returns true or array of errors.
 *
 * @return mixed
 */
public function validateCurrentPassword($password)
{
    $result = array();

    if (!Zend_Validate::is($password, 'NotEmpty')) {
        $result[] = $this->_getHelper('adminhtml')->__('Current password field cannot be empty.');
    } elseif (is_null($this->getId()) || !$this->_getHelper('core')->validateHash($password, $this->getPassword())){
        $result[] = $this->_getHelper('adminhtml')->__('Invalid current password.');
    }

    if (empty($result)) {
        $result = true;
    }
    return $result;
}