Project

General

Profile

Bug #88399

Updated by John Miller about 5 years ago

Having correctly configured extension in ext_localconf.php, controllers, actions and associated settings assigned via TypoScript are completely ignored during run. 

 Example; 
 In ext_localconf.php; 

 <pre> 
 \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin( 
     VendorName.ExtensionName,  
     PluginName,  
     [ 
     'Frontend' => 'index', 
     'Account' => 'index,login,logout,register' 
 ], [ 
     'Account' => 'login,logout,register' 
 ]); 
 </pre> 

 Example ts setup; 
 <pre> 
 page = PAGE 
 page { 
     ... 

     10 = USER 
     10 { 
         ... 

         userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run 
         vendorName = VendorName 
         extensionName = ExtensionName 
         pluginName = PluginName 
     controller = Frontend 
     action = index 

     } 
 } 

 ... 

 5 = USER_INT 
 5 { 
     userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run 
     vendorName = VendorName 
     extensionName = ExtensionName 
     pluginName = PluginName 
     controller = Account 
     action = login 
 } 
 </pre> 

 In this setup, userFunc is picked up together with vendorName, extensionName, and pluginName. The rest of the details are ignored.  

 I then went 'under the hood' to check what's going on and found that TYPO3 9 processes controller and action configurations only if they come from GET/POST (ServerRequest) parameters. (See TYPO3\CMS\Extbase\Mvc\Web\RequestBuilder::build()) TYPO3\CMS\Extbase\Mvc\Web::build()) If no not parameter is found, RequestBuilder it simply picks pick up the first controller and first action available under configured plugin. (See TYPO3\CMS\Extbase\Mvc\Web\RequestBuilder::loadDefaultValues()). TYPO3\CMS\Extbase\Mvc\Web::loadDefaultValues()). 

 Am I wrong, or is there something am missing or is this by design and how can one go about defining controller action via TypoScript? typoscript? 

 Thanx.

Back