คีย์รีจิสทรี Mage“ _singleton / weee / observer” มีอยู่แล้ว


13

เมื่อฉันพยายามเพิ่มหรือแก้ไขผลิตภัณฑ์ฉันได้รับข้อผิดพลาดต่อไปนี้:

Mage registry key "_singleton/weee/observer" already exists
Trace:
#0 app/Mage.php(222): Mage::throwException('Mage registry k...')
#1 app/Mage.php(476): Mage::register('_singleton/weee...', false)
#2 app/code/core/Mage/Core/Model/App.php(1316): Mage::getSingleton('weee/observer')
#3 app/Mage.php(447): Mage_Core_Model_App->dispatchEvent('adminhtml_catal...', Array)
#4 app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Attributes.php(143): Mage::dispatchEvent('adminhtml_catal...', Array)
#5 app/code/core/Mage/Adminhtml/Block/Widget/Form.php(144): Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Attributes->_prepareForm()
#6 app/code/core/Mage/Core/Block/Abstract.php(862): Mage_Adminhtml_Block_Widget_Form->_beforeToHtml()
#7 app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tabs.php(79): Mage_Core_Block_Abstract->toHtml()
#8 app/code/core/Mage/Core/Block/Abstract.php(238): Mage_Adminhtml_Block_Catalog_Product_Edit_Tabs->_prepareLayout()
#9 app/code/core/Mage/Core/Model/Layout.php(456): Mage_Core_Block_Abstract->setLayout(Object(Mage_Core_Model_Layout))
#10 app/code/core/Mage/Core/Model/Layout.php(472): Mage_Core_Model_Layout->createBlock('adminhtml/catal...', 'product_tabs')
#11 app/code/core/Mage/Core/Model/Layout.php(239): Mage_Core_Model_Layout->addBlock('adminhtml/catal...', 'product_tabs')
#12 app/code/core/Mage/Core/Model/Layout.php(205): Mage_Core_Model_Layout->_generateBlock(Object(Mage_Core_Model_Layout_Element), Object(Mage_Core_Model_Layout_Element))
#13 app/code/core/Mage/Core/Model/Layout.php(210): Mage_Core_Model_Layout->generateBlocks(Object(Mage_Core_Model_Layout_Element))
#14 app/code/core/Mage/Core/Controller/Varien/Action.php(344): Mage_Core_Model_Layout->generateBlocks()
#15 app/code/core/Mage/Core/Controller/Varien/Action.php(269): Mage_Core_Controller_Varien_Action->generateLayoutBlocks()
#16 app/code/core/Mage/Adminhtml/Controller/Action.php(275): Mage_Core_Controller_Varien_Action->loadLayout(Array, true, true)
#17 app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php(207): Mage_Adminhtml_Controller_Action->loadLayout(Array)
#18 app/code/core/Mage/Core/Controller/Varien/Action.php(419): Mage_Adminhtml_Catalog_ProductController->newAction()
#19 app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('new')
#20 app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#21 app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#22 app/Mage.php(683): Mage_Core_Model_App->run(Array)
#23 index.php(124): Mage::run('catalog', 'website')
#24 {main}

วีโอไอพีเวอร์ชั่น 1.7.0.0 คอมไพเลอร์ปิดการล้างแคชสร้างดัชนีใหม่ไม่มีการปรับปรุงหรือติดตั้งส่วนขยายใหม่มันเพิ่งออกจากการทำงาน

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม!


1
จากความเข้าใจของฉันสิ่งนี้เกิดจากแคชคุณแน่ใจหรือว่ามันถูกล้าง? คุณล้างมันได้อย่างไร
Peter O'Callaghan

ฉันใช้การจัดการแคชภายใต้ระบบ - ล้างข้อมูลล้างแคชและเก็บข้อมูลล้างข้อมูล มีวิธีตรวจสอบว่าแคชถูกล้างออกหรือไม่?
littleredsunshine

สมมติว่าคุณใช้แคชไฟล์อยู่ตรวจสอบว่ามีบางอย่างในvar/cacheไดเรกทอรีถ้ามีให้ลบทุกอย่างในโฟลเดอร์
Peter O'Callaghan

พยายามที่จะยังคงได้รับข้อผิดพลาด ที่ด้านบนสุดของหน้าจอนอกจากนี้ยังมีการอ้างอิงไปยัง Linux sitename 3.8.0-41-generic # 60 ~ precision1-Ubuntu SMP ศุกร์ 16 พฤษภาคม 00:18:00 UTC 2014 x86_64 ขอบคุณสำหรับคำตอบด่วนและความช่วยเหลือของคุณ!
littleredsunshine

คำตอบ:


16

ข้อผิดพลาดนี้มาถึงเนื่องจากค่าว่างในรีจิสทรี

เพื่อป้องกันคุณต้องปิดการใช้งานโหมด 'การรวบรวม' และหากคุณต้องการใช้ให้เรียกใช้อีกครั้ง

php -f shell/compiler.php disable
php -f shell/compiler.php clear
php -f shell/compiler.php compile

พยายามล้างและปิดการใช้งานคอมไพเลอร์และยังได้รับข้อผิดพลาด ความคิดอื่น ๆ จะได้รับการชื่นชม
littleredsunshine

เรียกใช้การรวบรวมผลงาน !!!
MageDev

Abhishek คุณเป็นฮีโร่ของฉัน! โพสต์นี้แก้ปัญหาที่ฉันใช้จ่ายชั่วโมงด้วยที่มีข้อผิดพลาดคล้ายกับโพสต์ด้านบน การรวบรวมจากแผงผู้ดูแลระบบทำให้เกิดข้อผิดพลาด แต่วิ่งออกมาจากบรรทัดคำสั่งทำงานดี :)
MagentoMac

4

ตรวจสอบว่าเหตุการณ์ของคุณสังเกตรหัส xml ในโมดูลของคุณconfig.xmlถูกต้องหรือไม่

มันควรเป็นแบบนี้:

<events>
    <event_name_that_you_are_working_on>
        <observers>
            <some_unique_identifier>
                <type>singleton</type>
                <class>YourNamespace_YourModule_Model_Observer</class>
                <method>functionNameInYourObserver</method>
            </some_unique_identifier>
        </observers>
    </event_name_that_you_are_working_on>
</events>

ฉันเคยได้รับข้อผิดพลาดชนิดนี้เพราะฉันใช้modulename/observerโหนดคลาสภายใน ใช้ชื่อคลาสเต็ม ( YourNamespace_YourModule_Model_Observer) แก้ไขข้อผิดพลาดสำหรับฉัน

ในโค้ด xml เหตุการณ์ผู้สังเกตการณ์ของโมดูลคุณอาจใช้classดังนี้:

<class>yourmodule/observer</class>

ลองใช้สิ่งนี้แทน (ดังที่ทำในรหัส xml ของ event-observer):

<class>YourNamespace_YourModule_Model_Observer</class>

1
  1. ปิดใช้งานส่วนขยายจากapp\etc\moduelsไดเรกทอรี
  2. ล้างแคชและ
  3. เรียกใช้การรวบรวม

ตอนนี้มันจะทำงานได้ดี


0

ปิดใช้งานการคอมไพล์และแคชก่อน

และล้างแคชทั้งหมดอย่างเข้มแข็ง

จากนั้นติดตั้งส่วนขยาย

หลังจากนั้นเรียกใช้กระบวนการรวบรวม

กระบวนการดังกล่าวทำงานให้ฉัน


0

หากต้องการปิดใช้งานการรวบรวมใน Magento ให้แก้ไข include / config.php ที่บรรทัดที่ 28 ให้ยกเลิกเครื่องหมายข้อคิดเห็นบรรทัดแรกและคอมเม้นต์ที่สอง:

#define('COMPILER_INCLUDE_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'src');
define('COMPILER_COLLECT_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'stat');
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.