From: Christian Kuhn Date: Sun, 1 Jul 2012 19:21:57 +0000 (+0200) Subject: [BUGFIX] Extbase core bootstrap not found in frontend X-Git-Tag: TYPO3_6-2-0alpha1~21^2~276 X-Git-Url: http://git.typo3.org/Packages/TYPO3.CMS.git/commitdiff_plain/8771caa134d59ade3fd7738518356750b0cc3f0e [BUGFIX] Extbase core bootstrap not found in frontend The patch for issue #35866 removed all class entries from ext_autoload and relies on the 'extbase' naming scheme autoloader to find classes. This has the side effect that classes must be requested in upper camel case, otherwise they are not found. The frontend extbase plugins are called by a TypoScript userFunc. The requested extbase core bootstrap class must therefore be used with upper camel case as well. Change-Id: I67f1a0d3025b945ec8788f031b676fa62439a2c3 Resolves: #38527 Related: #35866 Related: #37920 Releases: 6.0 --- diff --git a/typo3/sysext/extbase/Classes/Utility/Extension.php b/typo3/sysext/extbase/Classes/Utility/Extension.php index 03a2d95a9d91..a7b080dcd255 100644 --- a/typo3/sysext/extbase/Classes/Utility/Extension.php +++ b/typo3/sysext/extbase/Classes/Utility/Extension.php @@ -115,7 +115,7 @@ class Tx_Extbase_Utility_Extension { $pluginContent = trim(' tt_content.list.20.' . $pluginSignature . ' = USER tt_content.list.20.' . $pluginSignature . ' { - userFunc = tx_extbase_core_bootstrap->run + userFunc = Tx_Extbase_Core_Bootstrap->run extensionName = ' . $extensionName . ' pluginName = ' . $pluginName . ' }'); @@ -127,7 +127,7 @@ tt_content.' . $pluginSignature . ' { 10 = < lib.stdheader 20 = USER 20 { - userFunc = tx_extbase_core_bootstrap->run + userFunc = Tx_Extbase_Core_Bootstrap->run extensionName = ' . $extensionName . ' pluginName = ' . $pluginName . ' } diff --git a/typo3/sysext/extbase/Tests/Unit/Utility/ExtensionTest.php b/typo3/sysext/extbase/Tests/Unit/Utility/ExtensionTest.php index b753a3e68719..b5ad3e4f75a7 100644 --- a/typo3/sysext/extbase/Tests/Unit/Utility/ExtensionTest.php +++ b/typo3/sysext/extbase/Tests/Unit/Utility/ExtensionTest.php @@ -60,19 +60,19 @@ class Tx_Extbase_Tests_Unit_Utility_ExtensionTest extends tx_phpunit_testcase { ), 'extensionname_someplugin' => 'USER', 'extensionname_someplugin.' => array( - 'userFunc' => 'tx_extbase_core_bootstrap->run', + 'userFunc' => 'Tx_Extbase_Core_Bootstrap->run', 'extensionName' => 'ExtensionName', 'pluginName' => 'SomePlugin', ), 'someotherextensionname_secondplugin' => 'USER', 'someotherextensionname_secondplugin.' => array( - 'userFunc' => 'tx_extbase_core_bootstrap->run', + 'userFunc' => 'Tx_Extbase_Core_Bootstrap->run', 'extensionName' => 'SomeOtherExtensionName', 'pluginName' => 'SecondPlugin', ), 'extensionname_thirdplugin' => 'USER', 'extensionname_thirdplugin.' => array( - 'userFunc' => 'tx_extbase_core_bootstrap->run', + 'userFunc' => 'Tx_Extbase_Core_Bootstrap->run', 'extensionName' => 'ExtensionName', 'pluginName' => 'ThirdPlugin', ), @@ -99,7 +99,7 @@ class Tx_Extbase_Tests_Unit_Utility_ExtensionTest extends tx_phpunit_testcase { $this->assertContains('tt_content.list.20.myextension_pi1 = USER', $staticTypoScript); $this->assertContains(' - userFunc = tx_extbase_core_bootstrap->run + userFunc = Tx_Extbase_Core_Bootstrap->run extensionName = MyExtension pluginName = Pi1', $staticTypoScript);