[TYPO3-german] __autoload()-Problem

Peter Linzenkirchner liste at lisardo.de
Thu Jan 26 18:18:50 CET 2012


Hallo, 

langsam wirds mir peinlich ... 

ich such und probier stundenlang rum, dann stelle ich hier die Frage und ein paar Minuten später fällt mir ein wies geht. OK, Frage vergessen, die Lösung ist ganz simpel: 

require_once(PATH_site.'typo3conf/ext/prod/dompdf/dompdf_config.inc.php');
spl_autoload_register('DOMPDF_autoload');
$dompdf = t3lib_div::makeInstance("DOMPDF"); 
... und weiter Befehle zur PDF-Erstellung
spl_autoload_unregister('DOMPDF_autoload');

man muss den neuen Autoloader halt einfach wieder abschalten, wenn er nicht mehr gebraucht wird. 

Peter


Am 26.01.2012 um 18:05 schrieb Peter Linzenkirchner:

> Hallo!
> 
> ich habe folgendes Problem: 
> Ich möchte dompdf in eine Extension einbinden. Ausserhalb von TYPO3 funktionert es, aber in der Extension klappt das Instanziieren der Objekte nicht. 
> 
> require_once(PATH_site.'typo3conf/ext/prod/dompdf/dompdf_config.inc.php');
> $dompdf = t3lib_div::makeInstance("DOMPDF"); 
> oder auch $dompdf = new DOMPDF(); - hat das gleiche Ergebnis. 
> 
> führt immer zur Fehlermeldung: Fatal error: Class 'DOMPDF' not found 
> OK, Ursache ist eine doppelte __autoload() - dompdf nutzt eine und TYPO3 4.5 offensichtlich auch. Wenn ich das hier ergänze: 
> 
> spl_autoload_register('DOMPDF_autoload');
> 
> wird die Klasse geladen, leider wird anschließend versucht, mit der __autoload()-Funktion von dompdf weitere TYPO3-Klassen zu laden, was nicht geht und deshalb zu dem Fehler führt: 
> 
> Fatal error: require_once() [function.require]: Failed opening required '/Users/peter/Sites/waffen/typo3conf/ext/prod/dompdf/include/t3lib_utility_math.cls.php' 
> 
> logisch, die Klasse liegt ja nicht in meiner Extension. 
> 
> -- 
> 
> Wie kann ich das jetzt angehen? Es muss doch eine Möglichkeit geben, die beiden Autoloader zusammenzuführen, sonst würde sich das ganze Konzept ad absurdum führen. Leider finde ich in TYPO3 nicht, wo dort der Autoloader verwendet wird; in der Klasse class.t3lib_autoloader.php wo ich ihn vermutet hätte, ist er nämlich nicht. 
> 
> Kann mir hier jemand einen Tipp geben? 
> 
> Vielen Dank
> Peter
> --
> Xing: http://www.xing.com/profile/Peter_Linzenkirchner
> Web: http://www.typo3-lisardo.de
> Facebook: http://tinyurl.com/lisardo-multimedia
> 
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

--
Xing: http://www.xing.com/profile/Peter_Linzenkirchner
Web: http://www.typo3-lisardo.de
Facebook: http://tinyurl.com/lisardo-multimedia



More information about the TYPO3-german mailing list