ข้อผิดพลาด:“ ควรสร้างวัตถุ DOMDocument” เมื่อเพิ่ม / แก้ไขแอตทริบิวต์ผลิตภัณฑ์


16

เมื่อใดก็ตามที่ฉันแก้ไขหรือเพิ่มคุณสมบัติของผลิตภัณฑ์ฉันได้รับข้อผิดพลาดกับส่วนหัว

"มีข้อผิดพลาดในการประมวลผลคำขอของคุณ"

และร่างกายพูด

"Object DOMDocument should be created."

The error log reads :
" a:4:{i:0;s:37:"Object DOMDocument should be created.";i:1;s:10125:"#0 /home/puffpackage/public_html/vendor/magento/framework/View/Element/UiComponent/Config/Reader.php(95): Magento\Framework\View\Element\UiComponent\Config\DomMerger->getDom()
#1 /home/puffpackage/public_html/vendor/magento/module-ui/Model/Manager.php(261): Magento\Framework\View\Element\UiComponent\Config\Reader->read()
#2 /home/puffpackage/public_html/vendor/magento/module-ui/Model/Manager.php(169): Magento\Ui\Model\Manager->prepare('form_schedule_b...')
#3 /home/puffpackage/public_html/vendor/magento/framework/View/Element/UiComponentFactory.php(139): Magento\Ui\Model\Manager->prepareData('form_schedule_b...')
#4 /home/puffpackage/public_html/vendor/magento/framework/View/Layout/Generator/UiComponent.php(125): Magento\Framework\View\Element\UiComponentFactory->create('form_schedule_b...', NULL, Array)
#5 /home/puffpackage/public_html/vendor/magento/framework/View/Layout/Generator/UiComponent.php(93): Magento\Framework\View\Layout\Generator\UiComponent->generateComponent(Object(Magento\Framework\View\Layout\Data\Structure), 'form_schedule_b...', Array, Object(Magento\Framework\View\Layout\Interceptor))
#6 /home/puffpackage/public_html/vendor/magento/framework/View/Layout/GeneratorPool.php(86): Magento\Framework\View\Layout\Generator\UiComponent->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context))
#7 /home/puffpackage/public_html/vendor/magento/framework/View/Layout.php(327): Magento\Framework\View\Layout\GeneratorPool->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context))
#8 /home/puffpackage/public_html/var/generation/Magento/Framework/View/Layout/Interceptor.php(89): Magento\Framework\View\Layout->generateElements()
#9 /home/puffpackage/public_html/vendor/magento/framework/View/Layout/Builder.php(129): Magento\Framework\View\Layout\Interceptor->generateElements()
#10 /home/puffpackage/public_html/vendor/magento/framework/View/Page/Builder.php(55): Magento\Framework\View\Layout\Builder->generateLayoutBlocks()
#11 /home/puffpackage/public_html/vendor/magento/framework/View/Layout/Builder.php(65): Magento\Framework\View\Page\Builder->generateLayoutBlocks()
#12 /home/puffpackage/public_html/vendor/magento/framework/View/Page/Config.php(166): Magento\Framework\View\Layout\Builder->build()
#13 /home/puffpackage/public_html/vendor/magento/framework/View/Page/Config.php(475): Magento\Framework\View\Page\Config->build()
#14 /home/puffpackage/public_html/vendor/magento/framework/View/Page/Config.php(433): Magento\Framework\View\Page\Config->getElementAttribute('body', 'class')
#15 /home/puffpackage/public_html/vendor/magento/module-catalog/Controller/Adminhtml/Product/Attribute.php(90): Magento\Framework\View\Page\Config->addBodyClass('attribute-popup')
#16 /home/puffpackage/public_html/vendor/magento/module-catalog/Controller/Adminhtml/Product/Attribute/Edit.php(55): Magento\Catalog\Controller\Adminhtml\Product\Attribute->createActionPage(Object(Magento\Framework\Phrase))
#17 /home/puffpackage/public_html/var/generation/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Edit/Interceptor.php(25): Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit->execute()
#18 /home/puffpackage/public_html/vendor/magento/framework/App/Action/Action.php(102): Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor->execute()
#19 /home/puffpackage/public_html/vendor/magento/module-backend/App/AbstractAction.php(226): Magento\Framework\App\Action\Action->dispatch(Object(Magento\Framework\App\Request\Http))
#20 /home/puffpackage/public_html/vendor/magento/module-catalog/Controller/Adminhtml/Product/Attribute.php(72): Magento\Backend\App\AbstractAction->dispatch(Object(Magento\Framework\App\Request\Http))
#21 [internal function]: Magento\Catalog\Controller\Adminhtml\Product\Attribute->dispatch(Object(Magento\Framework\App\Request\Http))
#22 /home/puffpackage/public_html/vendor/magento/framework/Interception/Interceptor.php(74): call_user_func_array(Array, Array)
#23 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor->___callParent('dispatch', Array)
#24 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor), Array, 'adminAuthentica...')
#25 /home/puffpackage/public_html/vendor/magento/module-backend/App/Action/Plugin/Authentication.php(143): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http))
#26 [internal function]: Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#27 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(68): call_user_func_array(Array, Array)
#28 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor), Array, 'designLoader')
#29 /home/puffpackage/public_html/vendor/magento/framework/App/Action/Plugin/Design.php(39): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http))
#30 [internal function]: Magento\Framework\App\Action\Plugin\Design->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#31 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(68): call_user_func_array(Array, Array)
#32 /home/puffpackage/public_html/vendor/magento/framework/Interception/Interceptor.php(136): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor), Array, 'adminMassaction...')
#33 /home/puffpackage/public_html/vendor/magento/module-backend/App/Action/Plugin/MassactionKey.php(33): Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http))
#34 [internal function]: Magento\Backend\App\Action\Plugin\MassactionKey->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#35 /home/puffpackage/public_html/vendor/magento/framework/Interception/Interceptor.php(141): call_user_func_array(Array, Array)
#36 /home/puffpackage/public_html/var/generation/Magento/Catalog/Controller/Adminhtml/Product/Attribute/Edit/Interceptor.php(40): Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor->___callPlugins('dispatch', Array, Array)
#37 /home/puffpackage/public_html/vendor/magento/framework/App/FrontController.php(55): Magento\Catalog\Controller\Adminhtml\Product\Attribute\Edit\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))
#38 [internal function]: Magento\Framework\App\FrontController->dispatch(Object(Magento\Framework\App\Request\Http))
#39 /home/puffpackage/public_html/vendor/magento/framework/Interception/Interceptor.php(74): call_user_func_array(Array, Array)
#40 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Framework\App\FrontController\Interceptor->___callParent('dispatch', Array)
#41 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'install')
#42 /home/puffpackage/public_html/vendor/magento/framework/Module/Plugin/DbStatusValidator.php(69): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http))
#43 [internal function]: Magento\Framework\Module\Plugin\DbStatusValidator->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#44 /home/puffpackage/public_html/vendor/magento/framework/Interception/Chain/Chain.php(68): call_user_func_array(Array, Array)
#45 /home/puffpackage/public_html/vendor/magento/framework/Interception/Interceptor.php(136): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'storeCookieVali...')
#46 /home/puffpackage/public_html/vendor/magento/module-store/Model/Plugin/StoreCookie.php(78): Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http))
#47 [internal function]: Magento\Store\Model\Plugin\StoreCookie->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http))
#48 /home/puffpackage/public_html/vendor/magento/framework/Interception/Interceptor.php(141): call_user_func_array(Array, Array)
#49 /home/puffpackage/public_html/var/generation/Magento/Framework/App/FrontController/Interceptor.php(26): Magento\Framework\App\FrontController\Interceptor->___callPlugins('dispatch', Array, Array)
#50 /home/puffpackage/public_html/vendor/magento/framework/App/Http.php(115): Magento\Framework\App\FrontController\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http))
#51 /home/puffpackage/public_html/vendor/magento/framework/App/Bootstrap.php(258): Magento\Framework\App\Http->launch()
#52 /home/puffpackage/public_html/index.php(39): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http))
#53 {main}";s:3:"url";s:244:"/puffmin/catalog/product_attribute/new/store/0/product_tab/variations/popup/1/key/5c2a345ed1b7894fdb9bca01f9daba0c242a4451e6b492633a2d909675076f05/?attribute%5Bis_global%5D=1&attribute%5Bfrontend_input%5D=select&set=4&attribute[frontend_label]=";s:11:"script_name";s:10:"/index.php";} "

คุณจะเจาะจงมากขึ้นได้อย่างไรเมื่อคุณลองทำสิ่งนี้? ผ่านทางผู้ดูแลระบบหรือแก้ไขไฟล์ xml?
Maddy

จากหน้าผู้ดูแลระบบเมื่อทำการแก้ไขผลิตภัณฑ์มันมีการกำหนดค่าซึ่งรวมถึงคุณลักษณะของผลิตภัณฑ์ฉันยังได้ลองแก้ไขจากส่วนคุณลักษณะเองและมีข้อผิดพลาดเดียวกัน
David Hunt

2
คุณควรตรวจสอบ var / log / system.log ในรหัสสุดท้าย
xanka

บันทึกข้อผิดพลาดอ่าน: [2015-12-16 06:40:32] main.CRITICAL: ไม่สามารถสร้างไดเรกทอรี / home / puffpackage / public_html / var / generation / Magento / Eav / รุ่น / Entity / Attribute / Config / Reader / [] []
David Hunt

Magento 2.0 CE ถ้ามันช่วย ..
David Hunt

คำตอบ:


8

ดูเหมือนว่าvar/generationจะไม่สามารถเขียนได้ ให้แน่ใจว่าจะตั้งค่าความเป็นเจ้าของระบบไฟล์ที่เหมาะสมและสิทธิ์ : var, app/etcและpub/staticควรจะเขียนได้โดยเว็บเซิร์ฟเวอร์


มันเป็น var / ผู้แต่งและ symfony ซึ่งมีเจ้าของผิด ฉันไม่แน่ใจว่าทำไมการเป็นเจ้าของผิดหรือสาเหตุที่ทำให้เกิดปัญหานี้ แต่ขอขอบคุณสำหรับความช่วยเหลือ :)
เดวิดฮันท์

17

อีกสาเหตุที่เป็นไปได้สำหรับObject DOMDocument should be created.ข้อผิดพลาดคือui_component/your_listing.xmlไฟล์ที่ไม่สามารถเข้าถึงได้ภายใต้view/adminhtml/โฟลเดอร์เมื่อคุณต้องการสร้างตาราง Adminhtml และคุณประกาศภายใต้view/adminhtml/layout/your_handle_index.xmlดังนี้:

<body>
    <referenceContainer name="content">
        <uiComponent name="your_listing"/>
    </referenceContainer>
</body>

ใช่ฉันมีปัญหานี้ ตอนนี้ฉันกำลังไปสู่ข้อผิดพลาดถัดไป :) Multumesc!
Adrian Moisa

1
ในกรณีของฉันฉันสะกดไดเรกทอรีของ view/adminhtml/
Nahid

สิ่งนี้ช่วยได้มากในกรณีของฉันฉันมีรหัสพิเศษบางอย่างในผู้ขาย / magento / framework / view / element / UiComponentFactory.php ที่เกี่ยวข้องกับ UI ซึ่งไม่ควรจะมี
Asad Ullah

10

อีกสาเหตุที่เป็นไปได้สำหรับข้อผิดพลาดนี้คือถ้าโฟลเดอร์คลาสของคุณไม่มีตัวพิมพ์ใหญ่ (เช่นตัวพิมพ์เล็ก)

var / log / system.log:

[2016-02-26 21:19:51] main.CRITICAL: Class Example\Myclass\Block\ShopCategory does not exist [] []
[2016-02-26 21:19:51] main.CRITICAL: Invalid block type: Example\Myclass\Block\ShopCategory [] []

ตัวอย่างเช่นหากโฟลเดอร์เนมสเปซเป็น "ตัวอย่าง" แทนที่จะเป็น "ตัวอย่าง" มันจะทำงานได้ดีบนการติดตั้ง Windows และ Mac ส่วนใหญ่ แต่จะล้มเหลวด้วย "Object DOMDocument ควรสร้างขึ้น" ข้อผิดพลาดบน Linux เนื่องจาก Linux ใช้ระบบไฟล์ที่คำนึงถึงขนาดตัวพิมพ์


ขอบคุณสำหรับคำแนะนำในการค้นหา system.log สำหรับฉันเป็นประกาศ php ง่ายNotice: Undefined index: regalo_mittente in /app/code/Custom/Backend/Helper/Data.php on line 50
LucScu

นี่เป็นสิ่งแรกที่ต้องพิจารณา
Nicolas PERNOT

1

เมื่อไม่นานมานี้ในระหว่างการพัฒนาโมดูลฉันได้รับข้อผิดพลาดชนิดเดียวกัน ในกรณีของฉันฉันพบข้อผิดพลาดจริงซึ่งก็คือ:

การพึ่งพาแบบวนรอบ: Vendor \ Module \ Helper \ Data ขึ้นอยู่กับ Vendor \ Module \ Helper \ Bot และในทางกลับกัน

ฉันลบการอ้างอิงนี้ออกจาก__constructวิธีการของผู้ช่วยเหลือของฉัน (refactored พวกเขาโดยใช้หนึ่งระดับผู้ปกครอง) และข้อผิดพลาดจะหายไป ดังนั้นฉันจะแนะนำให้คุณตรวจสอบการอ้างอิงแบบวงกลมในรหัสของคุณ

ข้อผิดพลาดประเภทอื่น: ข้อผิดพลาดร้ายแรงในระหว่างการเรนเดอร์ส่วนประกอบเกิดจากการเรียกไปยังคลาสที่ไม่มีอยู่จากโมดูลบุคคลที่สาม

ตามที่ฉันเข้าใจข้อผิดพลาดประเภทนี้เกิดขึ้นเมื่อข้อผิดพลาดร้ายแรงเกิดขึ้นระหว่างการแสดงผลขององค์ประกอบและไม่มีอะไรทั่วไปกับเอกสาร Object DOM


0

ถ้าคุณย้ายข้อมูลจาก Magento 1 ไปยัง Magento 2 และหากคุณได้รับข้อผิดพลาดนี้ในหน้าใดหน้าหนึ่งให้ทำตามขั้นตอนด้านล่าง:

หากคุณได้รับข้อผิดพลาดนี้ในที่เฉพาะเจาะจงหน้ามุมมองสินค้า , หน้าหมวดหมู่หรือหน้า ซ.ม. ใด ๆ แล้วข้ามไปที่ผลิตภัณฑ์ / ประเภทหรือ CMS หน้าแก้ไขส่วนและข้ามไปออกแบบส่วนและอยู่ในXML ปรับปรุงรูปแบบ ถ้าบล็อกใด ๆ จะถูกเพิ่มแล้วแสดงความคิดเห็นรหัส XML ที่หรือลบ มันและล้างแคชของคุณและตรวจสอบในส่วนหน้า


0

ฉันเจอสิ่งนี้แล้ว .. การตรวจสอบ var / log / system.log แสดงว่าข้อ จำกัด open_basedir มีผล ไฟล์ (ไฟล์ / etc / PKI / TLS / ใบรับรอง)

การลบข้อ จำกัด open_basedir ช่วยแก้ไขปัญหาได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.