Page_Redirecting no longer redirects on initial Add/Edit page request

PHPMaker version: 2026.14
Previous working version: PHPMaker 2025
Framework: Symfony (PHPMaker 2026 generated project)

I am experiencing what appears to be a regression in the Page_Redirecting server event after migrating a working PHPMaker 2025 project to PHPMaker 2026.

I have a database View named Tickets_Abiertos. Users work from the Tickets_Abiertos List page, but Add and Edit operations must actually be performed using the pages of another table named Ticket.

In PHPMaker 2025, I implemented this using the Page_Redirecting event of the Add/Copy Page of Tickets_Abiertos:

function Page_Redirecting(?string &$url): void
{
    $url = "ticketadd";
}

For Edit, I used the equivalent event on the Edit Page:

function Page_Redirecting(?string &$url): void
{
    $url = "ticketedit/" . $this->ID->CurrentValue;
}

Behavior in PHPMaker 2025

This works correctly.

For example, on the Tickets_Abiertos List page, the Add button itself still points to:

ticketsabiertosadd

This can be verified by hovering over the Add button in the browser.

When the button is clicked, PHPMaker enters the Tickets_Abiertos Add page and the Page_Redirecting event redirects the request to:

ticketadd

Therefore, the final page displayed to the user is ticketadd.

The same behavior works for Edit: the user initially enters the Tickets_Abiertos Edit page and Page_Redirecting redirects to:

ticketedit/{ID}

Behavior in PHPMaker 2026.14

After migrating the same project to PHPMaker 2026.14, this behavior no longer works.

Clicking Add requests:

/ticketsabiertosadd

The Page_Redirecting event is executed, and $url can be changed successfully, but PHPMaker does not perform the redirect to ticketadd.

To verify this, I temporarily changed the event to:

function Page_Redirecting(?string &$url): void
{
    Log("Tickets_Abiertos Add Page_Redirecting - URL original: " . $url);

    $url = "ticketadd";

    Log("Tickets_Abiertos Add Page_Redirecting - URL nueva: " . $url);
}

The PHPMaker/Symfony log shows:

[2026-09-02T11:33:33.444148-06:00] app.DEBUG:
Tickets_Abiertos Add Page_Redirecting - URL original:

[2026-09-02T11:33:33.444372-06:00] app.DEBUG:
Tickets_Abiertos Add Page_Redirecting - URL nueva: ticketadd

So the event is definitely executed and $url is successfully changed to ticketadd. However, the browser remains on /ticketsabiertosadd; no redirect to /ticketadd occurs.

The request log also confirms that the request path being processed is /ticketsabiertosadd.

Generated PHPMaker 2026 code

I also inspected the generated PHPMaker 2026 code.

The generated terminate() method calls pageRedirecting():

if (!IsApi() && method_exists($this, "pageRedirecting")) {
    $this->pageRedirecting($url);
}

and later contains:

if ($url !== null) {
    // ...
    $this->Response = new RedirectResponse(
        GetUrl($url),
        Config("REDIRECT_STATUS_CODE")
    );
}

This makes the behavior particularly confusing because Page_Redirecting is being called and $url is being changed by reference, but the redirect that occurred in PHPMaker 2025 does not occur in this PHPMaker 2026 scenario.

Workaround found

I found a workaround for PHPMaker 2026 by changing the generated target URLs before the List page renders them.

For Add, in Tickets_Abiertos List Page -> Page_Load:

function Page_Load(): void
{
    $this->AddUrl = "ticketadd";
}

This works correctly in PHPMaker 2026.14.

For Edit, in Tickets_Abiertos List Page -> Row_Rendering:

function Row_Rendering(): void
{
    if (!IsEmpty($this->ID->CurrentValue)) {
        $this->EditUrl = "ticketedit/" . $this->ID->CurrentValue;
    }
}

This also works correctly.

However, this changes the implementation compared with PHPMaker 2025. Instead of allowing the request to enter ticketsabiertosadd / ticketsabiertosedit and redirecting it using Page_Redirecting, the workaround changes the List page links before the user clicks them.

Expected result

Since the same Page_Redirecting code works in PHPMaker 2025, and the event is still available in PHPMaker 2026, I would expect:

function Page_Redirecting(?string &$url): void
{
    $url = "ticketadd";
}

to redirect the request to ticketadd in PHPMaker 2026 as it did in PHPMaker 2025.

Actual result

Page_Redirecting is executed and $url is changed to ticketadd, but the browser remains on ticketsabiertosadd.

The equivalent Edit scenario behaves the same way, which is why I had to replace it with the Row_Rendering workaround shown above.

Could you please confirm whether this is an intentional behavior change in PHPMaker 2026 due to the new Symfony request/response lifecycle, or a regression in Page_Redirecting?

If it is intentional, what is the recommended PHPMaker 2026 replacement for the PHPMaker 2025 behavior?

Update: I also verified the project settings and Lowercase routes is enabled.

Therefore, the routes used in my Page_Redirecting code (ticketadd and ticketedit/{ID}) are correct.

Click Tools -> Update template and try again.

Now it works, thanks