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

Fatal error: Cannot declare class - Joomla 3.7

7 yıl 6 ay önce #1575 Yazan: Søren Beck Jensen
Søren Beck Jensen tarafından Fatal error: Cannot declare class - Joomla 3.7 konusunda yanıtlandı
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

Lütfen sohbete katılmak için Giriş ya da Hesap açın.

7 yıl 6 ay önce #1576 Yazan: Gosling Cools
Gosling Cools tarafından Fatal error: Cannot declare class - Joomla 3.7 konusunda yanıtlandı
I want 3 beers as well! ;-)
Şu kullanıcı(lar) Teşekkür etti: Søren Beck Jensen

Lütfen sohbete katılmak için Giriş ya da Hesap açın.

7 yıl 6 ay önce - 7 yıl 6 ay önce #1577 Yazan: Carl Willingham
Carl Willingham tarafından Fatal error: Cannot declare class - Joomla 3.7 konusunda yanıtlandı
N.A.
Son Düzenleme: 7 yıl 6 ay önce Düzenleyen:Carl Willingham Neden: Found the issue

Lütfen sohbete katılmak için Giriş ya da Hesap açın.

7 yıl 6 ay önce - 7 yıl 6 ay önce #1578 Yazan: Randy Carey
Randy Carey tarafından Fatal error: Cannot declare class - Joomla 3.7 konusunda yanıtlandı

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.
Son Düzenleme: 7 yıl 6 ay önce Düzenleyen:Randy Carey
Şu kullanıcı(lar) Teşekkür etti: Søren Beck Jensen

Lütfen sohbete katılmak için Giriş ya da Hesap açın.

7 yıl 6 ay önce #1579 Yazan: Søren Beck Jensen
Søren Beck Jensen tarafından Fatal error: Cannot declare class - Joomla 3.7 konusunda yanıtlandı
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

Lütfen sohbete katılmak için Giriş ya da Hesap açın.

7 yıl 6 ay önce - 7 yıl 6 ay önce #1581 Yazan: Søren Beck Jensen
Søren Beck Jensen tarafından Fatal error: Cannot declare class - Joomla 3.7 konusunda yanıtlandı
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
Son Düzenleme: 7 yıl 6 ay önce Düzenleyen:Søren Beck Jensen

Lütfen sohbete katılmak için Giriş ya da Hesap açın.

Sayfa oluşturma süresi: 0.063 saniye
Geliştiren: Kunena Forum