× Please submit new Bug Reports on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues

Fatal error: Cannot declare class - Joomla 3.7

6 jaren 10 maanden geleden #1575 door Søren Beck Jensen
Beantwoord door Søren Beck Jensen in topic Fatal error: Cannot declare class - Joomla 3.7
Thank you for that update. I think what happened was that your component was built using Component Creator before we added the auto loader (that now broke). If that is the case, you may have to include it yourself as described.

Søren Beck Jensen
Founder, Component-Creator.com

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

6 jaren 10 maanden geleden #1576 door Gosling Cools
Beantwoord door Gosling Cools in topic Fatal error: Cannot declare class - Joomla 3.7
I want 3 beers as well! ;-)
De volgende gebruiker (s) zei dank u: Søren Beck Jensen

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

6 jaren 10 maanden geleden - 6 jaren 10 maanden geleden #1577 door Carl Willingham
Beantwoord door Carl Willingham in topic Fatal error: Cannot declare class - Joomla 3.7
N.A.
Laatst bewerkt 6 jaren 10 maanden geleden door Carl Willingham. Reden: Found the issue

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

6 jaren 10 maanden geleden - 6 jaren 10 maanden geleden #1578 door Randy Carey
Beantwoord door Randy Carey in topic Fatal error: Cannot declare class - Joomla 3.7

Can you please tell us which change in Joomla 3.7 caused this and any other compatibility break?

Joomla 3.7 introduced a new check that prevents two classes to have the same name (even though the documentation still says the two should be named the same way)


I see that core has named its admin helper class differently, of this pattern: ExampleHelper instead of ExampleHelperExample or ExampleHelperExampleadmin.

Further, I discovered a new dependency upon this naming pattern for this class. In order to add the new custom fields feature to a component, a plugin expects a component's admin helper class to have certain functions available to it, and it expects that helper class to follow the naming pattern: ExampleHelper. I discovered this when trying to add the new custom fields feature to an extension that I newly created with ComponentCreator. I was able to get the new feature to work (within the CC-created extension) by creating the needed helper class (ExampleHelper), adding the new functions used by custom fields, and having it extend the CC-created helper class (ExampleHelperExampleadmin).

I do not know all the details that led CC to choose the solution it did (ExampleHelperExampleadmin), but from what I'm seeing, this file/class name seems to stray from the "core" approach, and I suspect it will cause problems should anyone want to add the custom fields feature to a CC-created component. I may be wrong, and if so, please correct me. But I do want to give you a "heads up" to what I think I'm seeing.
Laatst bewerkt 6 jaren 10 maanden geleden door Randy Carey.
De volgende gebruiker (s) zei dank u: Søren Beck Jensen

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

6 jaren 10 maanden geleden #1579 door Søren Beck Jensen
Beantwoord door Søren Beck Jensen in topic Fatal error: Cannot declare class - Joomla 3.7
That is some good investigation there. We are looking into it. It is strange as "ExampleHelper" does not follow the standard Joomla naming convention for the JLoader and so custom fields have implemented this incorrectly it seems. But as I said... let us investigate this properly and get back to you.

Good work!

Søren Beck Jensen
Founder, Component-Creator.com

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

6 jaren 10 maanden geleden - 6 jaren 10 maanden geleden #1581 door Søren Beck Jensen
Beantwoord door Søren Beck Jensen in topic Fatal error: Cannot declare class - Joomla 3.7
Using only "ExampleHelper" breaks the auto loader functionality in Joomla so we recommend instead to add the lines:
// Ensure custom fields compatibility
class ExampleHelper extends ExampleHelpersExampleadmin {}

To the bottom of your helper file if you are using custom fields.

Søren Beck Jensen
Founder, Component-Creator.com
Laatst bewerkt 6 jaren 10 maanden geleden door Søren Beck Jensen.

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

Tijd voor maken pagina: 0.408 seconden
Gemaakt door Kunena

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.