Zum Inhalt springen

Plugin wird nicht im FE angezeigt, typo3 Fehler

Erstellt am 15. September 2014 · 4 Antworten · letzte Antwort am 28. November 2014

Tags: Frage

drewiss ·

Guten Morgen,
ich habe ein Problem mit meiner Extension. In Sachen Extensions schreiben für typo3, bin ich noch ein Anfänger. Ich habe nun das Problem, das meine Extension nicht im FE angezeigt wird. Im Backend funktioniert es ohne Probleme.

Mein System:
typo3 : 6.2.3
Fluid Templating Engine : 6.2
Extbase Framework : 6.2

Ich habe die Extension über den Extension Builder erstellt. Habe dann meinen Code hinzugefügt. Wie gesagt, im BE funktioniert es.

Nun die Fehlermeldung von typo3:

Ext Direct error in "TYPO3\CMS\Core\ExtDirect\ExtDirectApi" with namespace: "TYPO3"\n Try to clear the TYPO3 cache and / or use paramater no_cache=1 as parameter in URL typo3/ajax.php\n\n Check also the following points:\n - configuration in ext_localconf.php: registration key should be like "TYPO3.MyExtension.Sample"\n - URL typo3/ajax.php: namespace parameter should be like: "TYPO3.MyExtension"\n - javascript: method\'s name should be like: "TYPO3.MyExtension.Sample.myMethod"\n

Die Struktur der Extension habe ich mir bei einer anderen vorhandenen Extension abgeschaut. Also, Struktur der Ordner, der Klassen etc. Diese geht ohne Probleme.

Leider kann mir im Moment niemand behilflich sein. Habe natürlich auch schon das Orakel namens Google befragt, aber wie gesagt, bin Anfänger und verstehe da so einiges nicht.

Vielleicht kann mir ja einer von euch behilflich sein!
Vielen Dank im voraus!

Viele Grüße, Andre

OnkelEdi ·

Hallo,
in der Fehlermeldung stehen ja schon ein paar Hinweise. Hast du da schon mal geschaut?
Und bei welcher Extension hast du dir die Sachen abgeschaut. War die auch für typo3 6.x

drewiss ·

Hi,
ja, ich habe mir die Hints angeschaut. Die Extension ist auf der gleichen typo3 Instanz installiert wie meine. Habe natürlich dann mal bei der funktionierenden Extension, mir die Dokumente angeschaut, die zur Fehlermeldung beschrieben sind. Leider ist half mir das nicht weiter.

Ich habe eigentlich nur das Problem und die Extension ist soweit fertig.
Leider habe ich noch keine tiefgreifende Erfahrung mit typo3 Extensions, um eine Lösung zu finden.

jamescirk ·

Hallo,
ich habe Mittlerweile die Extension vom meinem Kollegen übernommen.
Typo 3 ist mittlerweile auf Version 6.2.6.
In der ext_localconf steht nicht all zu viel drinn:

<?php
if (!defined('TYPO3_MODE')) {
	die('Access denied.');
}

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
	'ReflectMedia.' . $_EXTKEY,
	'Flaechenerfassungfe',
	array(
		'Schlag' => 'list, show, new, create, edit, update, delete',
		'Auftrag' => 'list, show, new, create, edit, update, delete',
		'Frucht' => 'list, show, new, create, edit, update, delete',
		
	),
	// non-cacheable actions
	array(
		'Schlag' => 'create, update, delete',
		'Auftrag' => 'create, update, delete',
		'Frucht' => 'create, update, delete',
		
	)
);
?>

Scheinbar hat ExtDirect ein Problem mit dem JavaScript der Extension.
Ich habe bereits die Globalen variablen in ein Objekt gepackt um Namenskollisionen zu vermeiden, aber ihm passt das immer noch nicht.
Neben dem selbstgeschriebenden Javascript kommen noch, jquery 2, jquery-timepicker-addon, bootstrap und die Google Maps API v3 zum Einsatz.
Gibt es eine Möglichkeit raus zu finden was ExtDirect genauer stört?
ExtDirect wird übrigens nicht in der Extension verwendet.

Edit:
Nach langem Suchen bin ich fündig geworden. Ursache des Fehlers war das vendor prefix "ReflectMedia" das mein Kollege gewählt hatte.
Scheinbar verleitet der Großbuchstabe am Anfang typo dazu die classpathes relativ auf TYPO3 zu beziehen. Was iergendwie dazu führte das Teile des Backend Codes ausgeführt wurden und die beschriebene Fehlermeldung erzeugte. Ich habe das Preefix jetzt auf unser normalerweise verwendetes gesetzt und das Problem ist behoben.