0

由于使用 ajax,我配置了一个 eID,见下文:我想使用我的扩展的现有存储库。所以我正在通过 ext_localconf.php 加载一个控制器,它可以工作,我在 TestController 中:

$TYPO3_CONF_VARS['FE']['eID_include']['ajaxDispatcher'] = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('exacallmanagement').'Classes/Controller/TestController.php';

在 TestController 我运行:

\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('VENDOR\Exacallmanagement\Classes\Domain\Repository\CallhistoryRepository');

命名空间应该是正确的,我总是得到一个:致命错误:在 /Users/jacques/Sites/_typo3_engines/6.1.6/typo3/sysext/core 中找不到类 '\VENDOR\Exacallmanagement\Classes\Domain\Repository\CallhistoryRepository' /Classes/Utility/GeneralUtility.php 第 4114 行

有什么提示吗?

4

1 回答 1

1

您不应使用 makeInstance 创建存储库的实例。您应该首先获取 ObjectManager 的实例,然后使用它来获取存储库:

    $objectManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('\TYPO3\CMS\Extbase\Object\ObjectManager');
    $sampleRepository= $objectManager->get('\My\Extension\Domain\Repository\SampleRepository');
于 2014-02-07T23:28:56.117 回答