0

我正在尝试实现一个身份验证服务,该服务根据 ADLDS 对用户进行身份验证。到目前为止,一切都很好。服务的实现和激活不是问题,但我需要服务内的存储库中的一些功能。

$usergroups = $this->adlds->getTypoGroups($this->login['uname']);
/** @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage */
$groupStorage = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Persistence\\ObjectStorage');
$objectManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Object\\ObjectManager');
$plFrontendUserRepository = $objectManager->get('PLE\\PlBase\\Domain\\Repository\\PlFrontendUserRepository');
$languageGroupRepository = $objectManager->get('PLE\\PlBase\\Domain\\Repository\\LanguageGroupRepository');
foreach ($usergroups as $groupname) {
     $groupStorage->attach($languageGroupRepository->findByGroupTitle($groupname));
}

当我尝试使用 objectmanager 实例化存储库时,我得到“在第 1203 行调用 ..\Classes\Persistence\Generic\Storage\Typo3DbBackend.php 中非对象的成员函数 versionOL()”

当我尝试使用时:

/**
 * languageGroupRepository
 * 
 * @var \PLE\PlBase\Domain\Repository\LanguageGroupRepository
 * @inject
 */
protected $languageGroupRepository;

/**
 * plFrontendUserRepository
 *
 * @var \PLE\PlBase\Domain\Repository\PlFrontendUserRepository
 * @inject
 */
protected $plFrontendUserRepository;

并将两个存储库与“$this->repository”一起使用,我得到“调用非对象上的成员函数 findByGroupTitle()”(它是存储库的函数)......所以注入失败。我什至尝试实现注入功能,但这根本不起作用。

有任何想法吗?

4

0 回答 0