Bei der Verwendung von fremden Bibliotheken mit darin enthaltenen und für Extbase unbekannten Annotations kann eine Doctrine AnnotationException auftreten:

Doctrine\Common\Annotations\AnnotationException

[Semantical Error] The annotation "@protected" in property TCPDF::$page was never imported. Did you maybe forget to add a "use" statement for this annotation?

Durch nachfolgende Anweisung wird die fremde Annotation "@global" von Extbase / Doctrine ignoriert. Der Aufruf muss in der ext_localconf.php der eigenen Extension platziert werden.

\Doctrine\Common\Annotations\AnnotationReader::addGlobalIgnoredName('protected');

Da die ext_localconf.php Dateien aller Extensions eingebunden werden bevor der Code von Extensions ausgeführt wird, können so fremde Annotations nicht nur für eingebundene Bibliotheken sondern auch für in der eigenen Extension referenzierte Third-Party-Extensions ausgeschlossen werden.





Kommentare