Story #72222

CLI bootstraps with loading TypoScript files twice

Added by Henri Nathanson over 3 years ago. Updated 11 months ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Extbase
Target version:
-
Start date:
2015-12-14
Due date:
% Done:

100%

TYPO3 Version:
7
PHP Version:
5.6
Tags:
Sprint Focus:

Description

The error message for a missing <INCLUDE_TYPOSCRIPT: source="FILE: is shown twice on the CLI. See below. The bootstraping process - here for cliKey "extbase" - runs through the TypoScript loading twice. I guess this is not the optimum?

myUSER:/html/webseiten/mydomain.de > php_cli ./typo3/cli_dispatch.phpsh extbase help
localhost:/html/webseiten/mydomain.de/ - core: File "EXT:myextension/CCCCCCCCCCCCConfiguration/Typoscript/Constants/myconstants.ts" was not found.
#0  TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser::includeFile() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/TypoScript/Parser/TypoScriptParser.php:865]
#1  TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser::checkIncludeLines() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/TypoScript/TemplateService.php:1090]
#2  TYPO3\CMS\Core\TypoScript\TemplateService->processIncludes() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/TypoScript/TemplateService.php:623]
#3  TYPO3\CMS\Core\TypoScript\TemplateService->runThroughTemplates() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Configuration/BackendConfigurationManager.php:74]
#4  TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager->getTypoScriptSetup() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Configuration/ConfigurationManager.php:133]
#5  TYPO3\CMS\Extbase\Configuration\ConfigurationManager->getConfiguration() called at [/html/webseiten/mydomain.de/typo3conf/ext/flux/Classes/Service/FluxService.php:346]
#6  FluidTYPO3\Flux\Service\FluxService->getAllTypoScript() called at [/html/webseiten/mydomain.de/typo3conf/ext/flux/Classes/Service/FluxService.php:334]
#7  FluidTYPO3\Flux\Service\FluxService->getTypoScriptByPath() called at [/html/webseiten/mydomain.de/typo3conf/ext/flux/Classes/Service/FluxService.php:298]
#8  FluidTYPO3\Flux\Service\FluxService->getViewConfigurationForExtensionName() called at [/html/webseiten/mydomain.de/typo3conf/ext/fluidcontent/Classes/Service/ConfigurationService.php:123]
#9  FluidTYPO3\Fluidcontent\Service\ConfigurationService->getContentConfiguration() called at [/html/webseiten/mydomain.de/typo3conf/ext/fluidcontent/Classes/Service/ConfigurationService.php:128]
#10 FluidTYPO3\Fluidcontent\Service\ConfigurationService->getContentConfiguration() called at [/html/webseiten/mydomain.de/typo3conf/ext/fluidcontent/Classes/Service/ConfigurationService.php:167]
#11 FluidTYPO3\Fluidcontent\Service\ConfigurationService->renderPageTypoScriptForPageUid() called at [/html/webseiten/mydomain.de/typo3conf/ext/fluidcontent/Classes/Service/ConfigurationService.php:141]
#12 FluidTYPO3\Fluidcontent\Service\ConfigurationService->getPageTsConfig() called at [/html/webseiten/mydomain.de/typo3conf/ext/fluidcontent/Classes/Backend/TableConfigurationPostProcessor.php:27]
#13 FluidTYPO3\Fluidcontent\Backend\TableConfigurationPostProcessor->processData() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/Core/Bootstrap.php:1027]
#14 TYPO3\CMS\Core\Core\Bootstrap->runExtTablesPostProcessingHooks() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/Core/Bootstrap.php:974]
#15 TYPO3\CMS\Core\Core\Bootstrap->loadExtensionTables() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/backend/Classes/Console/CliRequestHandler.php:104]
#16 TYPO3\CMS\Backend\Console\CliRequestHandler->boot() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/backend/Classes/Console/CliRequestHandler.php:66]
#17 TYPO3\CMS\Backend\Console\CliRequestHandler->handleRequest() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/Core/Bootstrap.php:302]
#18 TYPO3\CMS\Core\Core\Bootstrap->handleRequest() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/backend/Classes/Console/Application.php:73]
#19 TYPO3\CMS\Backend\Console\Application->run() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/cli_dispatch.phpsh:26]
#20 {closure}()
#21 call_user_func() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/cli_dispatch.phpsh:27]
NULL
#0  TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser::includeFile() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/TypoScript/Parser/TypoScriptParser.php:865]
#1  TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser::checkIncludeLines() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/TypoScript/TemplateService.php:1090]
#2  TYPO3\CMS\Core\TypoScript\TemplateService->processIncludes() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/TypoScript/TemplateService.php:623]
#3  TYPO3\CMS\Core\TypoScript\TemplateService->runThroughTemplates() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Configuration/BackendConfigurationManager.php:74]
#4  TYPO3\CMS\Extbase\Configuration\BackendConfigurationManager->getTypoScriptSetup() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php:218]
#5  TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager->getExtbaseConfiguration() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php:152]
#6  TYPO3\CMS\Extbase\Configuration\AbstractConfigurationManager->getConfiguration() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Configuration/ConfigurationManager.php:131]
#7  TYPO3\CMS\Extbase\Configuration\ConfigurationManager->getConfiguration() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Core/Bootstrap.php:131]
#8  TYPO3\CMS\Extbase\Core\Bootstrap->configureObjectManager() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Core/Bootstrap.php:89]
#9  TYPO3\CMS\Extbase\Core\Bootstrap->initialize() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/Classes/Core/Bootstrap.php:192]
#10 TYPO3\CMS\Extbase\Core\Bootstrap->run() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/extbase/ext_localconf.php:39]
#11 TYPO3\CMS\Core\Utility\ExtensionManagementUtility::{closure}()
#12 call_user_func() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/backend/Classes/Console/CliRequestHandler.php:69]
#13 TYPO3\CMS\Backend\Console\CliRequestHandler->handleRequest() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/core/Classes/Core/Bootstrap.php:302]
#14 TYPO3\CMS\Core\Core\Bootstrap->handleRequest() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/sysext/backend/Classes/Console/Application.php:73]
#15 TYPO3\CMS\Backend\Console\Application->run() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/cli_dispatch.phpsh:26]
#16 {closure}()
#17 call_user_func() called at [/html/typo.sourcen/typo3_src-7.6.0/typo3/cli_dispatch.phpsh:27]
NULL
localhost:/html/webseiten/mydomain.de/ - core: File "EXT:myextension/CCCCCCCCCCCCConfiguration/Typoscript/Constants/myconstants.ts" was not found.

Associated revisions

Revision 45b73611 (diff)
Added by Benni Mack over 2 years ago

[TASK] Bootstrap: Load TCA configuration on every request

By moving Bootstrap::loadBaseTca() to the configure() call of the
TYPO3 Bootstrap, the global TCA variable is now populated very early
and it is obvious that this logic is then part of the actual system setup,
and does not need to be handled by any RequestHandler anymore.

Considering TCA is necessary for a TYPO3 environment to run,
this change might be very helpful.

Please note that the Install Tool application does not call
configure(), so this is not affected.

This also removes some issues related to Extbase
Command controllers in CLI handling.

Side effects:
- eID requests now have full TCA loaded as well at any time
- TCA is now loaded BEFORE entering any request handler check
- TCA is now loaded before e.g. BackendRouting initialization, and other Backend security checks

Easy to test the current behaviour:
- Clear all caches via install tool
- Call CLI command extbase:help which will result in a Warning / Exception

Resolves: #72222
Resolves: #81201
Releases: master
Change-Id: I31a0de0d0b039eb6180123678c61d3f26435dd63
Reviewed-on: https://review.typo3.org/52753
Tested-by: TYPO3com <>
Reviewed-by: Georg Ringer <>
Tested-by: Georg Ringer <>
Reviewed-by: Jan Helke <>
Tested-by: Jan Helke <>
Reviewed-by: Philipp Gampe <>
Reviewed-by: Christian Kuhn <>
Tested-by: Christian Kuhn <>

History

#1 Updated by Gerrit Code Review over 2 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/52753

#2 Updated by Gerrit Code Review over 2 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/52753

#3 Updated by Benni Mack over 2 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

#4 Updated by Benni Mack 11 months ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF