Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Questions around the TYPO3 integration and plugins
Forum rules
Always add your TYPO3, Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
rvhelp2
Posts: 29
Joined: 29 Oct 2022, 10:10

Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by rvhelp2 » 26 May 2023, 12:26

Hello.

I have tried several times now to get Typo 12.4.1 to work with Aimeos 23.4.2. No matter if with Composer, DDEV or TER - always the backend page of Aimeos remains white. The current error is from a fresh new Classic installation of Typo3 and Aimeos via TER.

The error message:
Fatal error: Declaration of Aimeos\Base\View\Helper\Request\Standard::getServerParams() must be compatible with Psr\Http\Message\ServerRequestInterface::getServerParams(): array in /var/www/typo3conf/ext/aimeos/Resources/Libraries/aimeos/aimeos-base/src/View/Helper/Request/Standard.php on line 313

User avatar
Metalics
Advanced
Posts: 103
Joined: 13 Jul 2015, 23:59

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by Metalics » 26 May 2023, 16:59

I can confirm this.

"Core: Exception handler (WEB): Uncaught TYPO3 Exception: Unable to get property "type" of non-object "getTSFE()". | RuntimeException thrown in file .../typo3_src-12.4.1/vendor/symfony/expression-language/Node/GetAttrNode.php in line 83. Requested URL: ......typo3/module/web/aimeos?token=--AnonymizedToken--"

Related issue:
https://forge.typo3.org/issues/100345

User avatar
aimeos
Administrator
Posts: 7858
Joined: 01 Jan 1970, 00:00

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by aimeos » 29 May 2023, 09:04

We are having a hard time with TYPO3 v12 either because we are not able to install it form TER at all due to this bug:
https://forge.typo3.org/issues/100730

@Metalics:
Can you change this line in your installation and see if it works better then?
https://github.com/aimeos/aimeos-typo3/ ... up.txt#L91
Replace with:

Code: Select all

[traverse(request.getQueryParams(), 'type') in [191351524, 191351525]]
Clear all caches afterwards!
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, Image give us a star

User avatar
Metalics
Advanced
Posts: 103
Joined: 13 Jul 2015, 23:59

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by Metalics » 29 May 2023, 12:57

Hello,
Now this error disappeared. But still impossible to use Aimeos.

Aimeos settings page on backend is blank with error
"Failed to load resource: the server responded with a status of 500 ()".

Same error appears (blank page) in the typo3 fronted pages which is including Aimeos plug-ins.

rvhelp2
Posts: 29
Joined: 29 Oct 2022, 10:10

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by rvhelp2 » 31 May 2023, 09:22

aimeos wrote: 29 May 2023, 09:04 We are having a hard time with TYPO3 v12 either because we are not able to install it form TER at all due to this bug:
https://forge.typo3.org/issues/100730
And by composer, DDEV or manual upload? Is it possible to run aimeos on typo12 atm? I have problems with all installation methods.

Thanks for the quick reply and help.

User avatar
aimeos
Administrator
Posts: 7858
Joined: 01 Jan 1970, 00:00

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by aimeos » 31 May 2023, 12:21

Composer installation worked fine until 12.4, but now we can't install TYPO3 at all (12.4.1, base installation without Aimeos).
Can you post the output of "composer show"?
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, Image give us a star

RetDen
Posts: 4
Joined: 05 May 2023, 18:56

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by RetDen » 31 May 2023, 19:49

aimeos wrote: 31 May 2023, 12:21 Composer installation worked fine until 12.4, but now we can't install TYPO3 at all (12.4.1, base installation without Aimeos).
Can you post the output of "composer show"?

Code: Select all

composer show
bacon/bacon-qr-code                2.0.8   BaconQrCode is a QR code generator for PHP.
christian-riesen/base32            1.6.0   Base32 encoder/decoder according to RFC 4648
dasprid/enum                       1.0.4   PHP 7.1 enum implementation
doctrine/annotations               2.0.1   Docblock Annotations Parser
doctrine/cache                     2.2.0   PHP Doctrine Cache library is a popular cache implementation that suppo...
doctrine/dbal                      3.6.2   Powerful PHP database abstraction layer (DBAL) with many features for d...
doctrine/deprecations              v1.1.0  A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 loggi...
doctrine/event-manager             2.0.0   The Doctrine Event Manager is a simple PHP event system that was built ...
doctrine/instantiator              2.0.0   A small, lightweight utility to instantiate objects in PHP without invo...
doctrine/lexer                     3.0.0   PHP Doctrine Lexer parser library that can be used in Top-Down, Recursi...
egulias/email-validator            4.0.1   A library for validating emails against several RFCs
enshrined/svg-sanitize             0.15.4  An SVG sanitizer for PHP
firebase/php-jwt                   v6.5.0  A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Sho...
guzzlehttp/guzzle                  7.7.0   Guzzle is a PHP HTTP client library
guzzlehttp/promises                1.5.3   Guzzle promises library
guzzlehttp/psr7                    2.5.0   PSR-7 message implementation that also provides common utility methods
lolli42/finediff                   1.0.2   PHP implementation of a Fine granularity Diff engine
masterminds/html5                  2.8.0   An HTML5 parser and serializer.
nikic/php-parser                   v4.15.5 A PHP parser written in PHP
phpdocumentor/reflection-common    2.2.0   Common reflection classes used by phpdocumentor to reflect the code str...
phpdocumentor/reflection-docblock  5.3.0   With this component, a library can provide support for annotations via ...
phpdocumentor/type-resolver        1.7.2   A PSR-5 based resolver of Class names, Types and Structural Element Names
phpstan/phpdoc-parser              1.21.3  PHPDoc parser with support for nullable, intersection and generic types
psr/cache                          3.0.0   Common interface for caching libraries
psr/clock                          1.0.0   Common interface for reading the clock.
psr/container                      2.0.2   Common Container Interface (PHP FIG PSR-11)
psr/event-dispatcher               1.0.0   Standard interfaces for event handling.
psr/http-client                    1.0.2   Common interface for HTTP clients
psr/http-factory                   1.0.2   Common interfaces for PSR-7 HTTP message factories
psr/http-message                   2.0     Common interface for HTTP messages
psr/http-server-handler            1.0.2   Common interface for HTTP server-side request handler
psr/http-server-middleware         1.0.2   Common interface for HTTP server-side middleware
psr/log                            3.0.0   Common interface for logging libraries
ralouphie/getallheaders            3.0.3   A polyfill for getallheaders.
scssphp/scssphp                    v1.11.0 scssphp is a compiler for SCSS written in PHP.
symfony/cache                      v6.3.0  Provides extended PSR-6, PSR-16 (and tags) implementations
symfony/cache-contracts            v3.3.0  Generic abstractions related to caching
symfony/clock                      v6.3.0  Decouples applications from the system clock
symfony/config                     v6.3.0  Helps you find, load, combine, autofill and validate configuration valu...
symfony/console                    v6.3.0  Eases the creation of beautiful and testable command line interfaces
symfony/dependency-injection       v6.3.0  Allows you to standardize and centralize the way objects are constructe...
symfony/deprecation-contracts      v3.3.0  A generic function and convention to trigger deprecation notices
symfony/doctrine-messenger         v6.3.0  Symfony Doctrine Messenger Bridge
symfony/event-dispatcher           v6.3.0  Provides tools that allow your application components to communicate wi...
symfony/event-dispatcher-contracts v3.3.0  Generic abstractions related to dispatching event
symfony/expression-language        v6.3.0  Provides an engine that can compile and evaluate expressions
symfony/filesystem                 v6.3.0  Provides basic utilities for the filesystem
symfony/finder                     v6.3.0  Finds files and directories via an intuitive fluent interface
symfony/http-foundation            v6.3.0  Defines an object-oriented layer for the HTTP specification
symfony/mailer                     v6.3.0  Helps sending emails
symfony/messenger                  v6.3.0  Helps applications send and receive messages to/from other applications...
symfony/mime                       v6.3.0  Allows manipulating MIME messages
symfony/options-resolver           v6.3.0  Provides an improved replacement for the array_replace PHP function
symfony/polyfill-ctype             v1.27.0 Symfony polyfill for ctype functions
symfony/polyfill-intl-grapheme     v1.27.0 Symfony polyfill for intl's grapheme_* functions
symfony/polyfill-intl-idn          v1.27.0 Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions
symfony/polyfill-intl-normalizer   v1.27.0 Symfony polyfill for intl's Normalizer class and related functions
symfony/polyfill-mbstring          v1.27.0 Symfony polyfill for the Mbstring extension
symfony/polyfill-php72             v1.27.0 Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions
symfony/polyfill-php80             v1.27.0 Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions
symfony/polyfill-php83             v1.27.0 Symfony polyfill backporting some PHP 8.3+ features to lower PHP versions
symfony/polyfill-uuid              v1.27.0 Symfony polyfill for uuid functions
symfony/property-access            v6.3.0  Provides functions to read and write from/to an object or array using a...
symfony/property-info              v6.3.0  Extracts information about PHP class' properties using metadata of popu...
symfony/rate-limiter               v6.3.0  Provides a Token Bucket implementation to rate limit input and output i...
symfony/routing                    v6.3.0  Maps an HTTP request to a set of configuration variables
symfony/service-contracts          v3.3.0  Generic abstractions related to writing services
symfony/string                     v6.3.0  Provides an object-oriented API to strings and deals with bytes, UTF-8 ...
symfony/uid                        v6.3.0  Provides an object-oriented API to generate and represent UIDs
symfony/var-exporter               v6.3.0  Allows exporting any serializable PHP data structure to plain PHP code
symfony/yaml                       v6.3.0  Loads and dumps YAML files
typo3/class-alias-loader           v1.1.4  Amends the composer class loader to support class aliases to provide ba...
typo3/cms-backend                  v12.4.1 TYPO3 CMS backend
typo3/cms-belog                    v12.4.1 TYPO3 CMS Log - View logs from the sys_log table in the TYPO3 backend m...
typo3/cms-beuser                   v12.4.1 TYPO3 CMS Backend User - TYPO3 backend module System>Backend Users for ...
typo3/cms-cli                      3.1.0   TYPO3 command line binary
typo3/cms-composer-installers      v5.0.0  TYPO3 CMS Installers
typo3/cms-core                     v12.4.1 TYPO3 CMS Core
typo3/cms-dashboard                v12.4.1 TYPO3 CMS Dashboard - TYPO3 backend module used to configure and create...
typo3/cms-extbase                  v12.4.1 TYPO3 CMS Extbase - Extension framework to create TYPO3 frontend plugin...
typo3/cms-extensionmanager         v12.4.1 TYPO3 CMS Extension Manager - Backend module (Admin Tools>Extensions) f...
typo3/cms-felogin                  v12.4.1 TYPO3 CMS Frontend Login - A template-based plugin to log in website us...
typo3/cms-filelist                 v12.4.1 TYPO3 CMS Filelist - TYPO3 backend module (File>Filelist) used for mana...
typo3/cms-fluid                    v12.4.1 TYPO3 CMS Fluid Integration - Integration of the Fluid templating engin...
typo3/cms-fluid-styled-content     v12.4.1 TYPO3 CMS Fluid Styled Content - Fluid templates for TYPO3 content elem...
typo3/cms-form                     v12.4.1 TYPO3 CMS Form - Flexible TYPO3 frontend form framework that comes with...
typo3/cms-frontend                 v12.4.1 TYPO3 CMS Frontend
typo3/cms-impexp                   v12.4.1 TYPO3 CMS Import/Export - Tool for importing and exporting records usin...
typo3/cms-info                     v12.4.1 TYPO3 CMS Info - TYPO3 backend module for displaying information, such ...
typo3/cms-install                  v12.4.1 TYPO3 CMS Install Tool - The Install Tool is used for installation, upg...
typo3/cms-reactions                v12.4.1 TYPO3 CMS Reactions - Handle incoming Webhooks for TYPO3
typo3/cms-rte-ckeditor             v12.4.1 TYPO3 CMS RTE CKEditor - Integration of CKEditor as a Rich Text Editor ...
typo3/cms-seo                      v12.4.1 TYPO3 CMS SEO - SEO features including specific fields for SEO purposes...
typo3/cms-setup                    v12.4.1 TYPO3 CMS Setup - Allows users to edit a limited set of options for the...
typo3/cms-sys-note                 v12.4.1 TYPO3 CMS System Notes - Records with messages which can be placed on a...
typo3/cms-t3editor                 v12.4.1 TYPO3 CMS T3Editor - JavaScript-driven editor with syntax highlighting ...
typo3/cms-tstemplate               v12.4.1 TYPO3 CMS TypoScript - TYPO3 backend module for the management of TypoS...
typo3/cms-viewpage                 v12.4.1 TYPO3 CMS Viewpage - Use the (Web>View) backend module to view a fronte...
typo3/cms-webhooks                 v12.4.1 TYPO3 CMS Webhooks - Handle outgoing Webhooks for TYPO3
typo3/html-sanitizer               v2.1.1  HTML sanitizer aiming to provide XSS-safe markup based on explicitly al...
typo3fluid/fluid                   2.8.0   The TYPO3 Fluid template rendering engine
webmozart/assert                   1.11.0  Assertions to validate method input/output with nice error messages.

User avatar
aimeos
Administrator
Posts: 7858
Joined: 01 Jan 1970, 00:00

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by aimeos » 04 Jun 2023, 08:49

We've adapted the code to psr/http-message v2 which caused the 500 error and created a new dev package:
https://aimeos.org/fileadmin/download/a ... 3-pre1.zip

You can also try to install the Aimeos package via composer. At the moment, we still are unable to test ourselves due to the mentioned TYPO3 issues, so please report any errors you still get.
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, Image give us a star

User avatar
aimeos
Administrator
Posts: 7858
Joined: 01 Jan 1970, 00:00

Re: Typo 12 Aimeos Backend Error "Declaration must be compatible with ..."

Post by aimeos » 14 Jun 2023, 08:42

Using composer works, if you downgrade psr/http-message to 1.0 before:
composer req psr/http-message:~1.0

Reason is that the used nyholm/psr7-server package still requires 1.x while TYPO3 already installs 2.x (the differences between both packages are PHP return types only).
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, Image give us a star

Post Reply