1

我正在使用我创建的自定义主题运行 Magento 1.5.1(我正在使用它,因为它是与 Lightspeed POS 一起使用的最新版本)。我正在运行 Lightspeed POS 连接器,并且我已经手动安装了 Virtual Merchant 插件。我的服务器是由 hostmonster 托管的共享服务器。

当我尝试结帐时,我收到错误警报Method "" is not defined in ""

Firebug 给了我以下信息:

POST https://odd-style.com/magento/index.php/checkout/onepage/saveOrder/ 200 OK
{"success":false,"error":true,"error_messages":"Method \"\" is not defined in \"\""}

我的magento异常日志给了我:

2012-06-06T01:20:46+00:00 ERR (3): 
exception 'Mage_Core_Exception' with message 'Method "" is not defined in ""' in /home4/oddnycco/public_html/magento/app/Mage.php:550
Stack trace:

#0 /home4/oddnycco/public_html/magento/app/code/core/Mage/Core/Model/App.php(1274): Mage::throwException('Method "" is no...')
#1 /home4/oddnycco/public_html/magento/app/code/core/Mage/Core/Model/App.php(1253): Mage_Core_Model_App->_callObserverMethod(false, '', Object(Varien_Event_Observer))
#2 /home4/oddnycco/public_html/magento/app/Mage.php(416): Mage_Core_Model_App->dispatchEvent('checkout_type_o...', Array)
#3 /home4/oddnycco/public_html/magento/app/code/core/Mage/Sales/Model/Service/Quote.php(180): Mage::dispatchEvent('checkout_type_o...', Array)
#4 /home4/oddnycco/public_html/magento/app/code/core/Mage/Sales/Model/Service/Quote.php(238): Mage_Sales_Model_Service_Quote->submitOrder()
#5 /home4/oddnycco/public_html/magento/app/code/core/Mage/Checkout/Model/Type/Onepage.php(742): Mage_Sales_Model_Service_Quote->submitAll()
#6 /home4/oddnycco/public_html/magento/app/code/core/Mage/Checkout/controllers/OnepageController.php(499): Mage_Checkout_Model_Type_Onepage->saveOrder()
#7 /home4/oddnycco/public_html/magento/app/code/core/Mage/Core/Controller/Varien/Action.php(420): Mage_Checkout_OnepageController->saveOrderAction()
#8 /home4/oddnycco/public_html/magento/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(253): Mage_Core_Controller_Varien_Action->dispatch('saveOrder')
#9 /home4/oddnycco/public_html/magento/app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#10 /home4/oddnycco/public_html/magento/app/code/core/Mage/Core/Model/App.php(340): Mage_Core_Controller_Varien_Front->dispatch()
#11 /home4/oddnycco/public_html/magento/app/Mage.php(627): Mage_Core_Model_App->run(Array)
#12 /home4/oddnycco/public_html/magento/index.php(80): Mage::run('', 'store')
#13 {main}

到目前为止,我已经尝试过书中所有类型的缓存清除。我已将 php 内存限制的大小增加到 256MB。我查看了堆栈跟踪中引用的所有文件,我只能说 $method 和 $object 都是因为作为“”传递的。我真的不明白为什么,我对如何解决它没有更多的想法。:/

提前感谢任何人的帮助!

4

1 回答 1

1

好像您在 Magento 安装的某处定义了一个事件观察器(我想在第 3 方模块之一中)。从我的角度来看,似乎为该事件注册了一个空方法。

检查模块的 config.xml 中是否有正在侦听事件“checkout_type_onepage_save_order”的观察者(您可以轻松地 grep 您的 app/code/community 和 app/code/local 文件夹以获取此字符串)。尝试禁用模块(通过 app/etc/modules/Module_Name.xml),然后再次尝试签出。

于 2012-06-06T20:34:57.037 回答