TYPO3 9.5.11: нет класса с именем EXT: ap_docchecklogin (но класс существует)

Я использую расширение ap_docchecklogin (https://extensions.typo3.org/extension/ap_docchecklogin/), который работает под Typo3 8.7.29. Только под свежей версией TYPO3 9.5.11 я получаю следующее сообщение:

Нет класса с именем EXT: ap_docchecklogin / Classes / DocCheckAuthenticationService.php: & Antwerpes \ ApDocchecklogin \ DocCheckAuthenticationService

Это код, в котором возникает ошибка:

$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_fe.php']['initFEuser'][] = 'EXT:ap_docchecklogin/Classes/DocCheckAuthenticationService.php:&Antwerpes\ApDocchecklogin\DocCheckAuthenticationService->bypassLoginForCrawling';

Конечно, я очистил кеш и обновил автозагрузку PHP. Я также посмотрел на расширение, и класс определенно существует.

Обе версии Typo3 работают на одном сервере с одинаковыми настройками.

В чем разница между версиями Typo3? Почему работает в версии 8? У кого-нибудь были подобные проблемы?


person Martin    schedule 21.11.2019    source источник


Ответы (1)


Согласно журналу изменений здесь: https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/9.5/Deprecation-86279-VariousHooksAndPSR-15Middlewares.html, хуки, которые используется в расширении, устарело в версии TYPO3 9 LTS.

Вы можете увидеть проблему здесь: https://forge.typo3.org/issues/87357

вместо этого вы можете использовать собственное промежуточное программное обеспечение PSR-15.

Я внес небольшие изменения в код, и он больше не показывает ошибку. Не знаю, работает это у вас или нет (о функциональности я говорю)

Но попробуйте так ...

$GLOBALS['TYPO3_CONF_VARS']
    ['SC_OPTIONS']
    ['tslib/class.tslib_fe.php']
    ['initFEuser'][] = 'Antwerpes\\ApDocchecklogin\\DocCheckAuthenticationService->bypassLoginForCrawling';

Это помогает?

person GNB    schedule 22.11.2019
comment
Большое спасибо, расширение теперь работает без ошибок, и я проверю работоспособность. - person Martin; 22.11.2019