Project

General

Profile

Actions

Bug #90599

closed

AssetCollector: "Serialization of 'Closure' is not allowed" for uncached plugins

Added by Christian Eßl over 4 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2020-02-29
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
10
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

  • Install introduction package
  • Implement a ext:form form on a page and submit it.

leads to:

(1/1) Exception
Serialization of 'Closure' is not allowed

in /var/www/html/typo3/sysext/frontend/Classes/Http/RequestHandler.php line 199
        // Add previously generated page content within the <body> tag afterwards
        $pageRenderer->addBodyContent(LF . $pageContent);
        if ($controller->isINTincScript()) {
            // Store the serialized pageRenderer in configuration
            $controller->config['INTincScript_ext']['pageRenderer'] = serialize($pageRenderer);
            // Render complete page, keep placeholders for JavaScript and CSS
            return $pageRenderer->renderPageWithUncachedObjects($controller->config['INTincScript_ext']['divKey']);
        }
        // Render complete page

because the RequestHandler is trying to serialize $pageRenderer, but AssetCollector contains a closure.

In case of the introduction package, the asset collector contains two media files:
  • fileadmin/introduction/images/introduction-package.svg
  • fileadmin/introduction/images/introduction-package-inverted.svg

which contain both a TYPO3\CMS\Core\Resource\File and a TYPO3\CMS\Core\Resource\ProcessedFile object.
Removing these two files prevents the error.

Actions

Also available in: Atom PDF