"Class not found" für (eigenen) Widget Controller

Hallo zusammen,

ich wollte mittels eines eigenen Moduls meinen Shop um einige Funktionen erweitern. Darunter soll links in der Navigation, neben der Kategorie + den Unterkategorien auch die Hersteller gelistet werden, als eigene Box. Diese Box wollte ich als Widget einbinden.

Das klappt nur leider überhaupt nicht.

Metadata.php:


$sMetadataVersion = '1.1';
$aModule = array(
    'id'            => 'moduleid',
    'title'         => 'title',
    'description'   => "diverse Funktionen",
    'thumbnail'     => 'picture.png',
    'version'       => '1.0.0',
    'author'        => 'ich',
    'email'         => 'nah',
    'url'           => 'gibbetnich',
    'extend'        => array(),
    'files'         => array(
        'oxwmanufacturertree'    => 'manufacturer_list/widgets/oxwmanufacturertree'
    ),
    'templates'     => array(
        'manufacturer_nav.tpl'   => 'manufacturer_list/out/widget/manufacturer_nav.tpl'
    )
);

Im “modules”-Verzeichnis, natürlich.

“oxmanufacturertree.php” unter obigem Pfad


class oxwmanufacturertree extends oxWidget
{
    protected $_aComponentNames = array( 'oxcmp_categories' => 1 );
    protected $_sThisTemplate = 'manufacturer_nav.tpl';
    public function render()
    {
        parent::render();
        return $this->_sThisTemplate;
    }
    public function getDeepLevel()
    {
        return $this->getViewParameter( "deepLevel" );
    }
}

Die “sidebar.tpl”:


[{block name="sidebar_categoriestree"}]
    [{if $oView->getClassName() != 'start' && $oView->getClassName() != 'compare'}]
        [{oxid_include_widget cl="oxwCategoryTree" cnid=$oView->getCategoryId() deepLevel=0 noscript=1 nocookie=1}]
        <br />
        [{oxid_include_widget cl="oxwmanufacturertree" cnid=$oView->getCategoryId() deepLevel=0 noscript=1 nocookie=1}]
    [{/if}]
[{/block}]

Um das ganze erst einmal zu testen, hab ich den Inhalt der Klasse oxwCategoryTree in meine Datei kopiert, sowie auch den Inhalt von der bestehenden Kategorie Logik. So wollte ich erst einmal schauen, ob er die Daten an die richtige Stelle setzt. Ursprünglich hatte ich nur ein paar Minuten dafür eingeplant- sitze daran allerdings bereits seit ca. 6 Stunden.

Fehlermeldung im Log: EXCEPTION_SYSTEMCOMPONENT_CLASSNOTFOUND

Das Modul ist aktiviert, der TMP wurde gelöscht, Browser Cache auch gelöscht und das ganze hab ich auch immer mal wieder in unterschiedlichen Kombinationen durchgespielt.

Selbiges Problem hatte ich zuvor bei einem anderen Controller, da ging es aber plötzlich nach 30 Minuten. Mein Kollege konnte sich darauf keinen Rheim machen, wie auch in diesem Fall nicht.

Hat jemand noch eine Idee, woran es liegen kann, dass die Klasse von OXID scheinbar nicht gefunden werden kann?

Auch mittels /index.php?cl=oxwmanufacturertree ist sie nicht aufrufbar, nur vorab. Darunter hätte ich zumindest eine weiße Seite vermutet, oder, als ich vor der Klasse ein die() gesetzt habe, den Inhalt der Klammern von die().

Beste Grüße,
Cryv

edit: Ich verwende die Community Edition 4.8.4

versuch mal so:


'files' => array(
    'oxwmanufacturertree'    => 'manufacturer_list/widgets/oxwmanufacturertree[b].php[/b]'
),


innerlich laut “NEEEEEEEEIN” ruf

Besten Dank, daran lag es. Gott ist das ein… schöner… Fehler… Alles abgesucht und am Ende ist es genau diese triviale Stelle.