[TYPO3-mvc] Possible bug in registering extBase BE modules - either in extbase or typo3
Marc Bastian Heinrichs
typo3 at mbh-web.de
Mon Feb 22 12:33:00 CET 2010
Martin Kutschker schrieb:
> Franz Koch schrieb:
>
>> $TBE_MODULES['_dispatcher'][] = 'Tx_Extbase_Dispatcher';
>>
>> after changing this line to:
>>
>> $TBE_MODULES['_dispatcher'] = 'Tx_Extbase_Dispatcher';
>
> I had recently a look at mod.php ant think thas the former should be correct. IIRC mod.php allows
> several external dispatchers to be installed and iterates until it founds one that thinks it is
> responsible for the module.
I also ran into this problem because my sys log is full of
---------------
Core: Error handler (BE): PHP Warning: Invalid argument supplied for
foreach() in
/var/www/web1/typo3_src-4.3.1/t3lib/class.t3lib_loadmodules.php line 542
. . . ! . Core: Error handler (BE): PHP Warning: array_map():
Argument #2 should be an array in
/var/www/web1/typo3_src-4.3.1/t3lib/class.t3lib_div.php line 1699
. . . ! . Core: Error handler (BE): PHP Warning: explode() expects
parameter 2 to be string, array given in
/var/www/web1/typo3_src-4.3.1/t3lib/class.t3lib_div.php line 1697
---------------
after installing extbase.
As Franz wrote $TBE_MODULES is also used in t3lib_loadModules. There it
is required that the default value of $TBE_MODULES['XYZ'] is an
comma-separted list of module keys and no array as it would be defined with
$TBE_MODULES['_dispatcher'][] = 'Tx_Extbase_Dispatcher';
A special case is $TBE_MODULES['_PATHS'];
I think $TBE_MODULES['_dispatcher'] should not be parsed in
t3lib_loadModules::parseModulesArray, so it has to be unset in
t3lib_loadModules::load as it's done with $TBE_MODULES['_PATHS'],
because it registers only external dispatchers and no BE modules
itselfs, right?
corresponding mantis issue# 13604
kind regards,
Marc Bastian Heinrichs
More information about the TYPO3-project-typo3v4mvc
mailing list