La clave de registro de mago "_singleton / weee / observador" ya existe

13

Cuando intento agregar o editar un producto, recibo el siguiente error:

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}

Magento ver. 1.7.0.0 El compilador apagó el caché borrado, el índice reconstruido, no hay actualizaciones o se han instalado nuevas extensiones, simplemente dejó de funcionar

¡Cualquier ayuda sería apreciada!

littleredsunshine
fuente
1
Según tengo entendido, esto es causado por el caché, ¿estás seguro de que está despejado? ¿Cómo lo aclaraste?
Peter O'Callaghan
Utilicé Cache Management en Sistema: Flush Magento Cache y Flush Cache Storage. ¿Hay alguna manera de verificar si el caché se ha vaciado?
littleredsunshine
Suponiendo que esté usando un caché basado en archivos, verifique que haya algo dentro del var/cachedirectorio, si lo hay, elimine todo en la carpeta.
Peter O'Callaghan
Intenté eso, todavía obtengo errores. En la parte superior de la pantalla también hay una referencia al nombre de sitio de Linux 3.8.0-41-generic # 60 ~ precisa1-Ubuntu SMP viernes 16 de mayo 00:18:00 UTC 2014 x86_64 ¡Gracias por sus respuestas rápidas y su ayuda!
littleredsunshine

Respuestas:

16

Este error llega debido a valores vacíos en el registro.

Para evitarlo, debe deshabilitar el modo 'compilación' y, si desea usarlo, vuelva a ejecutarlo.

php -f shell/compiler.php disable
php -f shell/compiler.php clear
php -f shell/compiler.php compile
Abhishek Gupta
fuente
Intenté borrar y deshabilitar el compilador y aún obtener el error. Cualquier otra idea sería apreciada.
littleredsunshine
Ejecutar compilación funciona !!!
MageDev
Abhishek eres mi héroe! Esta publicación solucionó un problema en el que he pasado horas con un error similar al de la publicación anterior. Compilar desde el panel de administración provocando un error. Pero correr desde la línea de comando funcionó bien :)
MagentoMac
4

Compruebe si el código xml de su observador de eventos en el módulo config.xmles correcto.

Debería ser algo como esto:

<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>

Una vez recibí este tipo de error porque estaba usando el modulename/observernodo dentro de la clase. Usar el nombre completo de la clase ( YourNamespace_YourModule_Model_Observer) resolvió el error para mí.

En el código xml de observador de eventos de su módulo, puede estar usando lo classsiguiente:

<class>yourmodule/observer</class>

Intente usar esto en su lugar (como se hizo en el código xml de observador de eventos anterior):

<class>YourNamespace_YourModule_Model_Observer</class>
Mukesh Chapagain
fuente
1
  1. Deshabilita la extensión del app\etc\moduelsdirectorio.
  2. Borrar caché y
  3. Ejecutar compilación.

Ahora, funcionará bien.

MageDev
fuente
0

Primero deshabilita la compilación y el caché.

Y borrar todo el caché con fuerza.

Luego instale la extensión.

Después de ese proceso Ejecutar compilación.

El proceso anterior funcionó para mí.

Roshni
fuente
0

Para deshabilitar la compilación en Magento, edite incluye / config.php. Alrededor de la línea 28, descomente la primera línea y comente la segunda:

#define('COMPILER_INCLUDE_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'src');
define('COMPILER_COLLECT_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'stat');
Minakshi Agrawal
fuente