Migrating from 7.14.4 to 8.6.1: Exception in Controller: No module defined (nothing on home screen after login)

Hi,

After migrating to 8.6.1, I am stuck on a blank home page. Any clues appreciated :slight_smile:

Best,
Stéphane.

Description
I migrated from 7.14.4 to 8.6.1.

After login, I get the home page but nothing on it.

In the public/legacy/suitecrm.log, the only error is this:

[103][1][FATAL] Exception handling in /app/suitecrm/public/legacy/include/MVC/Controller/SugarController.php:397
[103][1][FATAL] Exception in Controller: No module defined

Environment

  • VPS
  • SuiteCRM in custom docker, based on php8.2-apache
  • PHP 8.2
  • MariaDB in docker, version: 10.11
  • SuiteCRM version: 8.6.1
  • Operating System: Linux

Other info

I did the migration by following the steps here: migration instructions

Migration was successful, but I could not login → In the database, I changed the id of the admin user to 1 (from this post)
It worked immediately after this.

Maybe it solves the login problem but messes things up in other ways? Permissions?

1 Like

I have the exact same error when accessing an Email record.

For some reason the URL query has the correct parameters in a previous call to the function, but then it’s empty:

Mon Aug 26 16:54:23 2024 [12690][1][FATAL] RouteConverter::convertUri: index.php?module=Emails&action=DetailView&record=a5453b14-6bdf-3576-18eb-66c85a85c24c
Mon Aug 26 16:54:23 2024 [12690][1][FATAL] RouteConverter::convertUri: index.php?module=Emails&action=EditView&return_module=Emails&return_action=DetailView
Mon Aug 26 16:54:23 2024 [12690][1][FATAL] RouteConverter::convertUri: index.php?module=&action=DetailView&record=
Mon Aug 26 16:54:23 2024 [12690][1][FATAL] Exception handling in /var/www/crm/public/legacy/include/MVC/Controller/SugarController.php:397
Mon Aug 26 16:54:23 2024 [12690][1][FATAL] Exception in Controller: No module defined

See the three calls to convertUri.

This seems to be the incorrect one:

RouteConverter::convertUri: index.php?module=&action=DetailView&record=

The only “fix” I found so far was disabling the exception in RouteConverter.php::69:

    public function convert(?string $module, ?string $action, ?string $record, ?array $queryParams): string
    {
        if (empty($module)) {
            // throw new InvalidArgumentException('No module defined');
        }

And this also started happening after upgrading to SuiteCRM 8.6.2 (from 8.5.1).

If you think it is an issue and not yet reported here, you can raise one.

@rsp Good idea, done: Accessing detail view of Email module throws exception: `Exception in Controller: No module defined` · Issue #537 · salesagility/SuiteCRM-Core · GitHub

1 Like

I updated from 8.61 to 8.7-beta and had same problem. disabled the line as you indicated and it works now and I can see the emails in my Timeline with Contacts. Previously, the email page was blank. Good sleuthing and repair suggestion on Github.

2 Likes