Project

General

Profile

Actions

Bug #90924

closed

Maximum route parameters always appended

Added by Matthias Krappitz over 4 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Site Handling, Site Sets & Routing
Start date:
2020-04-01
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
9
PHP Version:
7.3
Tags:
Complexity:
Is Regression:
Yes
Sprint Focus:

Description

Since TYPO3 9.5.14 behaviour changed with the following routenhancer example:

  Example:
    type: Extbase
    limitToPages:
      - 123
    extension: Example
    plugin: Example
    routes:
      -
        routePath: '/page/{page}'
        _controller: 'Example::list'
        _arguments:
          page: '@widget_0/currentPage'
      -
        routePath: '/company/{company_profile}'
        _controller: 'Example::list'
        _arguments:
          company_profile: 'companyProfile'
      -
        routePath: '/company/{company_profile}/page/{page}'
        _controller: 'Example::list'
        _arguments:
          company_profile: 'companyProfile'
          page: '@widget_0/currentPage'
    defaultController: 'Example::list'
    defaults:
      page: '0'
    requirements:
      page: \d+
    aspects:
      page:
        type: StaticRangeMapper
        start: '1'
        end: '200'
      company_profile:
        type: PersistedAliasMapper
        tableName: tx_example_domain_model_example
        routeFieldName: slug

Until TYPO3 9.5.13 when linking as follows this resulted in a correct and working link like this: /somepage/company/the-company/

<f:link.page pageUid="123" additionalParams="{tx_example_example: {companyProfile: 123}}">Example Company</f:link.page>

In TYPO3 9.5.14 and 9.5.15 it results in a wrong link: /somepage/company/the-company/page/0/ and calling it results in 404.

It looks to me that the routing for some reason picks / matches incorrectly the route '/company/{company_profile}/page/{page}', even though it should pick up the route '/company/{company_profile}' instead, as only the companyProfile parameter is in the link.

So this breaks many of my 9 installations in terms of URLs and I can't update.


Related issues 5 (1 open4 closed)

Related to TYPO3 Core - Bug #91098: Routing and RouteEnhancer problemsNeeds Feedback2020-06-23

Actions
Related to TYPO3 Core - Bug #91333: routeEnhancer of type Extbase with multiple routePaths and various argument with same controller and action are broken since Typo3 9.5.14Closed2020-05-07

Actions
Related to TYPO3 Core - Bug #91880: Routing for actions without parameters brokenClosed2020-07-28

Actions
Related to TYPO3 Core - Bug #91323: Route enhancer kills unregistered get parametersClosed2020-05-06

Actions
Related to TYPO3 Core - Bug #90959: Wrong URL applied for RouteClosed2020-04-06

Actions
Actions

Also available in: Atom PDF