Thierry - 2025-03-19

Running iTop 3.2.0, I started to face this kind of error when trying to access certain tickets (just a few of them), preventing from displaying corresponding tickets in the application :

iTop: An error occurred, check server error log for more information.

Here is the content of apache error.log file:

PHP Fatal error:  Uncaught TypeError: Combodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPane
l\\ActivityEntry\\CaseLogEntry::__construct(): Argument #1 ($oDateTime) must be of type DateTime, false given, called in /var/www/itop-3.2.0/sources/Application/UI/Base/Layout/ActivityP
anel/ActivityEntry/ActivityEntryFactory.php on line 87 and defined in /var/www/itop-3.2.0/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/CaseLogEntry.php:65\nStack trace
:\n#0 /var/www/itop-3.2.0/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/ActivityEntryFactory.php(87): Combodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPanel\\Activ
ityEntry\\CaseLogEntry->__construct()\n#1 /var/www/itop-3.2.0/sources/Application/UI/Base/Layout/ActivityPanel/ActivityPanelFactory.php(117): Combodo\\iTop\\Application\\UI\\Base\\Layou
t\\ActivityPanel\\ActivityEntry\\ActivityEntryFactory::MakeFromCaseLogEntryArray()\n#2 /var/www/itop-3.2.0/sources/Application/UI/Base/Layout/PageContent/PageContentFactory.php(69): Com
bodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPanel\\ActivityPanelFactory::MakeForObjectDetails()\n#3 /var/www/itop-3.2.0/pages/UI.php(445): Combodo\\iTop\\Application\\UI\\Base\\L
ayout\\PageContent\\PageContentFactory::MakeForObjectDetails()\n#4 {main}\n  thrown in /var/www/itop-3.2.0/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/CaseLogEntry.ph
p on line 65

As I could not find any issue on the concerned records in the database (both in tables "ticket" and "ticket_request"), I decided to upgrade iTop to the latest version 3.2.1.
Same issue:
PHP Fatal error: Uncaught TypeError: Combodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPanel\\ActivityEntry\\CaseLogEntry::__construct(): Argument #1 ($oDateTime) must be of type DateTime, false given, called in /var/www/itop-3.2.1/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/ActivityEntryFactory.php on line 87 and defined in /var/www/itop-3.2.1/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/CaseLogEntry.php:65\nStack trace:\n#0 /var/www/itop-3.2.1/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/ActivityEntryFactory.php(87): Combodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPanel\\ActivityEntry\\CaseLogEntry->__construct()\n#1 /var/www/itop-3.2.1/sources/Application/UI/Base/Layout/ActivityPanel/ActivityPanelFactory.php(119): Combodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPanel\\ActivityEntry\\ActivityEntryFactory::MakeFromCaseLogEntryArray()\n#2 /var/www/itop-3.2.1/sources/Application/UI/Base/Layout/PageContent/PageContentFactory.php(69): Combodo\\iTop\\Application\\UI\\Base\\Layout\\ActivityPanel\\ActivityPanelFactory::MakeForObjectDetails()\n#3 /var/www/itop-3.2.1/pages/UI.php(443): Combodo\\iTop\\Application\\UI\\Base\\Layout\\PageContent\\PageContentFactory::MakeForObjectDetails()\n#4 {main}\n thrown in /var/www/itop-3.2.1/sources/Application/UI/Base/Layout/ActivityPanel/ActivityEntry/CaseLogEntry.php on line 65

Any idea of what I should do to recover access to my tickets ?

Thanks !