[TYPO3-mvc] Scheduling Extbase Action (version 1.4.2)
Frank Krüger
fkrueger-ml at mp-group.net
Wed Aug 26 16:52:15 CEST 2015
Hi Sotiris,
maybe using a CommandController is a solution for your issue.
Best regards,
Frank
Am Freitag, den 22.06.2012, 13:26 +0300 schrieb SotirisBK:
> Hi all,
>
> I have seen a thread here having many replies and a lot of people
> responding that had a confirmed solution. I believe this was for extbase
> version 1.3.
> Following your example I have created an extension and I have set a
> Schedule action. I see the scheduled action correctly in the schedule
> module and when I execute it through BE runs normally and completes what
> is to be done.
>
> so what I've done so far:
>
>
> (ext_localconf.php)
> $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['scheduler']['tasks']['tx_extensionname_utility_scheduler']
> = array(
> 'extension' => $_EXTKEY,
> 'title' => 'This is a scheduler blah blah',
> 'description' => 'And does this and that',
> );
>
>
>
> (ext_autoload.php)
> <?php
> $extensionPath = t3lib_extMgm::extPath('extensionname');
>
> return array(
> 'tx_extensionname_utility_scheduler' => $extensionPath .
> 'Utility/Scheduler.php',
> );
> ?>
>
>
>
> (I created under Utility folder the file Scheduler.php)
> <?php
>
> class tx_extensionname_utility_scheduler extends tx_scheduler_Task {
> public function execute() {
> try {
> t3lib_div::devlog('--- working ---', 'extensionname', 0);
> $configuration = array(
> 'extensionName' => 'extensionname',
> 'pluginName' => 'Pi1',
> 'controller' => 'Mycontroller',
> 'action' => 'myaction',
> 'switchableControllerActions' => array(
> 'Mycontroller' => array(
> 'actions' => 'myaction'
> )
> )
> );
> $_SERVER['REQUEST_METHOD'] = 'GET';
> $_GET['tx_extensionname_plugin']['controller'] =
> 'Mycontroller';
> $_GET['tx_extensionname_plugin']['action'] = 'myaction';
>
> $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['extbase']['extensions']['extensionname']['modules']['Pi1']['controllers']
> = array(
> 'Mycontroller' => array(
> 'actions' => array(
> 'myaction'
> )
> )
> );
> $bootstrap =
> t3lib_div::makeInstance('Tx_Extbase_Core_Bootstrap');
> $result = $bootstrap->run('', $configuration);
> t3lib_div::devlog($result , 'extensionname', 0);
> return TRUE;
> }
> catch(Exception $e) {
> t3lib_div::devlog('--- error ---'.$e->getMessage(),
> 'extensionname', 3);
> return FALSE;
> }
> }
> }
>
> ?>
>
> The problem:
> Unfortunately this doesn't happen when I try to execute it through
> "cli_dispatch.phpsh scheduler" command. In this case it seems that it
> gets into the scheduler class, reads configuration but never reaches
> into the Controller's Action but ends the scheduler normally. Of course
> no action was taken! The error that I get from Bootstrap is:
>
> Extbase 1.4.2 usage: ./cli_dispatch.phpsh extbase <command identifier>
> See './cli_dispatch.phpsh extbase help' for a list of all available
> commands.
>
>
> Does anybody have a clue why I can execute manually through Scheduler
> and fails when it comes to cronjob?
>
> Thanks,
> Sotiris
> _______________________________________________
> TYPO3-project-typo3v4mvc mailing list
> TYPO3-project-typo3v4mvc at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-project-typo3v4mvc
More information about the TYPO3-project-typo3v4mvc
mailing list