JFACTORY-CLASS-001

JFactory

JFactory class name

JFactory is a Joomla 3 global class. Joomla 4 still has an alias. Joomla 5 needs the Behaviour – Backward Compatibility plugin. Native Joomla 6 does not load that alias — you get Class "JFactory" not found.

JFactoryJoomla\CMS\Factory

Dies at Joomla 5 → 6J3: Works nativelyJ4: Alias (old name still resolves)J6: Removed — fatalBC plugin: covers the class nameMechanical renameJoomla API

What you will see

  • Class "JFactory" not found
  • Class 'JFactory' not found
  • Failed to open stream: JFactory

Symptoms people search

white screen after disabling compatibility plugin · class not found on Joomla 6 · works on Joomla 5 until I turn off backward compatibility · JFactory after upgrade · compat plugin required

Replace this code

Swap JFactory for Joomla\CMS\Factory.

Joomla 3

Remove or stop calling this

JFactory::getInstance();
// or new JFactory()

Joomla 4 / 6

Use this instead

use Joomla\CMS\Factory;

// Call the namespaced class. Do not keep the J prefix.

How to fix it

  1. 1Add a use statement for Joomla\CMS\Factory.
  2. 2Replace every JFactory with the short class name from that use line.
  3. 3Disable Behaviour – Backward Compatibility on a Joomla 5 staging site. If it fatals, this class is still in the code.

Also known as

JFactory · Joomla\CMS\Factory · class alias · J prefix

Related issues

Get in touch

Have a project in mind? Let's talk about it.

Tell us what you're building. Whether it's a new site, an online store, a mobile app, or something that needs AI under the hood, we'll get back to you within a business day.

Free consultation
No commitment, no pressure
Reply within 24 hours
Usually much faster

Prefer a direct conversation?

Request a project quote

Tell us about your project

Fill out the quick form and we'll reach out.