ON JOOMLA 5.4
Admin > System > Update : Joomla >
Pre-Update Check for Joomla 6.0.0
Required Settings
Requirement :
The 'Behaviour - Backward Compatibility' plugin is disabled
Go to 'System - Manage - Plugins' and disable the plugin.
Clich here -> " System- Plugin : Behaviour"
click on the link
📍 Plugins
Behaviour - Backward Compatibility | behaviour | compat | Public | _ _
Disable the plugin
[Behaviour - Backward Compatibility](https://exemple.fr/administrator/index.php?option=com_plugins&task=plugin.edit&extension_id=_ _) behaviour compat Public 93
" Component Disabled ✅"
An error has occurred.
| 0 | Class "JTable" not found
And all the website is on this bug (front/admin)
Extension / Plug-in : {"name":"plg_behaviour_compat","type":"plugin","creationDate":"2023-09","author":"Joomla! Project","copyright":"(C) 2023 Open Source Matters, Inc.","authorEmail":"admin@joomla.org","authorUrl":"www.joomla.org","version":"5.0.0","description":"PLG_COMPAT_XML_DESCRIPTION","group":"","changelogurl":"","namespace":"Joomla\Plugin\Behaviour\Compat","filename":"compat"}
To fix your website, you can go to your database and enable the component in:
your_database > xxxx_extensions → (CTRL+F/search) plg_behaviour_compat → Edit → enable → change 0 to 1.
but that doesn't solve the initial problem, so I'm leaving this open.
| Labels |
Added:
No Code Attached Yet
|
||
| Labels |
Added:
Information Required
|
||
So when I disable the plugin during the pre-update check, the site breaks because these extensions still rely on JTable. Ok, understood
It’s much clearer now.
Here are the extensions on my site that currently depend on the Backward Compatibility plugin:
🟠 J2XML → multiple JTable references in its libraries and models
🟡 JCE → JTable usage in several model files
🔴 Zoo → alias defined for JTable in its framework
🟠 JComments → JTableContent used in plugin code
🟢 Core plugin Behaviour - Backward Compatibility → provides JTable alias
I’ll keep the plugin active for now and plan updates/patches for the legacy extensions or wait for the extensions to release a compatible update before fully migrating.
@ZaherMadi you should check for updates. I know that at least JCE is compatible
I would, thank you
| Status | New | ⇒ | Closed |
| Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2025-10-20 12:25:50 |
| Closed_By | ⇒ | ZaherMadi |
So when I disable the plugin during the pre-update check, the site breaks because these extensions still rely on JTable. Ok, understood It’s much clearer now. Here are the extensions on my site that currently depend on the Backward Compatibility plugin:
🟠 J2XML → multiple JTable references in its libraries and models
🟡 JCE → JTable usage in several model files
🔴 Zoo → alias defined for JTable in its framework
🟠 JComments → JTableContent used in plugin code
🟢 Core plugin Behaviour - Backward Compatibility → provides JTable alias
I’ll keep the plugin active for now and plan updates/patches for the legacy extensions or wait for the extensions to release a compatible update before fully migrating.
I had the same issue, I wasn't even going to update to 6, I just was looking around and it said disable the plugin, and if you do that before even updating the site completely broke and I had to load a backup. Nearly had a heart attack!
My error was "Class "JPlugin" not found
Actually, when I removed the extensions responsible for "JTable", I also came across "JPlugin". The process is the same. Namely searching through the files to find which plugins/extensions use this class, then remove it or update it , because they must also be obsolete.
The ‘Behaviour - Backward Compatibility’ plugin is used to find alternatives to obsolete classes. When it is removed, it causes malfunctions because the site no longer has this functionality. Update 5.4 is a transition to J6, as far as I understand, so the site is starting to prepare for the new structure and no longer accepts obsolete classes, at least without the plugin.
Actually, when I removed the extensions responsible for "JTable", I also came across "JPlugin". The process is the same. Namely searching through the files to find which plugins/extensions use this class, then remove it or update it , because they must also be obsolete.
The ‘Behaviour - Backward Compatibility’ plugin is used to find alternatives to obsolete classes. When it is removed, it causes malfunctions because the site no longer has this functionality. Update 5.4 is a transition to J6, as far as I understand, so the site is starting to prepare for the new structure and no longer accepts obsolete classes, at least without the plugin.
Hi
How can I fix the issue of JPlugin not found? I can't access to all administrative panel anymore and the website is no longer working. I cannot find in the database with plg_behaviour_compat in the extension table at all. I accidently disable the J5 behaviour compatibility while preparing for J6 update. Joomla is setting a trap for the users to update to the higher version without giving a second chance while making mistake.
I just ran into this. The first thing that you need to do is turn the plugin back on. Follow these instructions:
Re-enable Backward Compatibility (Database Fix):
If you cannot access your admin dashboard, you must enable the compatibility plugin manually via your database:
Open phpMyAdmin and find the table #__extensions (replace #_ with your prefix).
Search for the entry named plg_behaviour_compat or plg_system_compat.
Change the enabled column value from 0 to 1.
After you get that back on, your site will be accessible again. Now you have to find the culprit that caused the problem. I'm still working through this myself but I understand you can search the files for the extensions that use the item indicated in the error. In this case, JPlugin.
Hi Raere
Thanks for your information. I did it inside Joomla database to enable backward compatibility. Fortunately, the culprit is just only one plugin and can install the latest update to make it compatible with current version 6.
That is expected as you have a 3rd party extension which needs the Joomla 5 Backwards Compatibility plugin.
That's why we force to disable it before the update to 6 so you can see if there are such extensions, and you can switch it on again in database like you did and fix that.
If we would not force to do that before updating to 6, it would happen in the middle of the update to 6, which might result in a broken database and so not so easy to fix.
Please check and report back which of the 3rd party extensions use the "JTable" class alias. That can be easily found out with a text search on the files.