Ergebnis 1 bis 15 von 15

Thema: Fatal error: Cannot redeclare class Contao\TagHelper

  1. #1
    Contao-Nutzer
    Registriert seit
    26.09.2009.
    Ort
    Berlin
    Beiträge
    244

    Standard Fatal error: Cannot redeclare class Contao\TagHelper

    Hallo zusammen,

    ich nutze in meiner Contao Open Source CMS 3.2.8 Installation die Erweiterung tags.

    Ich bin dabei die website zu entwickeln, bisher habe ich die TAGS nur bei Events genutzt, jetzt wollte ich auf der Startseite sowohl news als auch event Listen einbauen, was mir folgende Fehlermeldung ausspuckt:

    Fatal error: Cannot redeclare class Contao\TagHelper in /mnt/web6/e2/89/53593989/htdocs/Testumgebung/system/modules/tags/classes/TagHelper.php on line 393

    Weiß hier jemand rat was das zu bedeuten hat?

    Besten Dank
    .christoph

  2. #2
    Contao-Fan Avatar von jenda
    Registriert seit
    20.06.2009.
    Ort
    Berlin
    Beiträge
    496

    Standard

    Ich habe auch denselben Fehler…. Liebe Grüße,

    Jan

  3. #3
    Contao-Nutzer
    Registriert seit
    26.09.2009.
    Ort
    Berlin
    Beiträge
    244

    Standard

    Ich habe die Reihenfolge von news und events umgedreht, dann gehts…

    Habe das so gelöst das ich das Newsmodul auch zusätzlich im HEAD im Layout direkt eingebunden habe und es dann im css auf display none gesetzt habe…

    Somit geht es bei mir jetzt.

    lgc

  4. #4
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Kannst Du das etwas genauer erklären, da die im französischen Forum das selbe Problem haben und Deinen Post eventuell nicht ganz verstanden haben.
    http://forum.contao.fr/viewtopic.php?f=2&t=3091
    Merci

  5. #5
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Das Problem ist, dass der Contao Autoloader einen Bug hat, den Leo nicht in der 3.2.x gefixt hat.

    Das Problem tritt auf, wenn eine Klasse einmal mit Contao\ClassName und einmal mit \ClassName in einer bestimmten Reihenfolge geladen wird.

    Anscheinend wird dies bei der tags Erweiterung gemacht. Als fix kann die tags Erweiterung immer \TagHelper verwenden.

    Oder ihr schafft es Leo dazu zu bringen folgenden commit endlich ins die LTS zu backporten.

    https://github.com/contao/core/commi...0efe6899504a1b

  6. #6
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Zitat Zitat von webstar Beitrag anzeigen
    Oder ihr schafft es Leo dazu zu bringen
    Siehe Ticket:
    KlausGrenoble:
    Kann es sein, daß diese Änderung in die LTS 3.2 eingearbeitet werden sollte oder könnte ? :
    Leo:
    Weiß ich ad hoc nicht, prüfen wir aber gerne. Bitte dazu ein separates Ticket aufmachen.
    webstar:
    macht Ticket auf

  7. #7
    Contao-Fan Avatar von hschottm
    Registriert seit
    15.06.2009.
    Ort
    Loxstedt, Germany
    Beiträge
    825
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von webstar Beitrag anzeigen
    Das Problem ist, dass der Contao Autoloader einen Bug hat, den Leo nicht in der 3.2.x gefixt hat.

    Das Problem tritt auf, wenn eine Klasse einmal mit Contao\ClassName und einmal mit \ClassName in einer bestimmten Reihenfolge geladen wird.

    Anscheinend wird dies bei der tags Erweiterung gemacht. Als fix kann die tags Erweiterung immer \TagHelper verwenden.

    Oder ihr schafft es Leo dazu zu bringen folgenden commit endlich ins die LTS zu backporten.

    https://github.com/contao/core/commi...0efe6899504a1b
    Wie sähe der Fix denn aus? Ich selbst binde den TagHelper ja nirgendwo ein. Heißt das, dass ich dann komplett auf den Contao-Namespace in der Klassendefinition verzichten muss? Sollte ich das dann konsequenterweise bei allen Klassen machen?

    Ich hab keine Lust, dass die Erweiterung noch anderen um die Ohren fliegt. Interessanterweise kann ich den dämlichen Fehler auch auf keiner meiner Installationen reproduzieren. Der Tag an dem die Namespaces eingeführt wurden, war ohnehin ein schlechter. Ich hab bis heute noch nicht den Sinn davon verstanden. Außer dass es dauernd zu Problemen führt, habe ich da noch keinen Vorteil drin gesehen.

    Gruß,
    Helmut
    Blackmail's such an ugly word. I prefer extortion -- the "x" makes it sound cool.
    -- Bender

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    35.517
    Partner-ID
    10107

    Standard

    Auf jeden Fall mal auf den Contao namespace verzichten, so wie ich das verstehe ist das ohnehin nicht Sinn der Sache.

    Du könntest entweder gar keinen namespace verwenden (was aber zu einem Problem führen könnte, wenn eine andere Extension zufällig auch eine Klasse mit dem selben Namen definiert) oder einfach einen eigenen Namespace verwenden. Bspw. ein Paketname oder Firmenname.

    Und ja, bei allen Klassen.

  9. #9
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Ja, den Sinn von der Namespace-Implementierung von Contao ist mehr als zweifelhaft. Namespaces generell nicht.

    Das Problem, was existiert liegt imho in ModuleEventlistTags bei

    PHP-Code:

    namespace Contao;

    // Problematisch, da effektiv Contao\TagHelper
    $helper = new TagHelper();

    // sicher
    $helper = new \TagHelper(); 

  10. #10
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Zitat Zitat von webstar Beitrag anzeigen
    Das Problem ist, dass der Contao Autoloader einen Bug hat, den Leo nicht in der 3.2.x gefixt hat.

    Das Problem tritt auf, wenn eine Klasse einmal mit Contao\ClassName und einmal mit \ClassName in einer bestimmten Reihenfolge geladen wird.

    Anscheinend wird dies bei der tags Erweiterung gemacht. Als fix kann die tags Erweiterung immer \TagHelper verwenden.

    Oder ihr schafft es Leo dazu zu bringen folgenden commit endlich ins die LTS zu backporten.

    https://github.com/contao/core/commi...0efe6899504a1b
    @webstar: Kannst Du nicht ein Ticket aufmachen ? Im französischen Forum fragt man, ob ein Ticket aufgemacht wurde. Ich versteh' null von dem ganzen Problem. Merci

  11. #11
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.293
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo KlausGrenoble,
    warum machen die denn dann kein Ticket dazu? Im Ticket System ist durchaus auch englisch erwünscht ;-)

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  12. #12
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Hier in Frankreich gibt es meist nur eine Sprache. Wie in Bayern.
    Beckenbauer im Jahre 2004, als man ihn zum Fifa-Präsidenten haben wollte:
    "Nein, nein ! Dazu muss man Sprachen kennen. i kenn nua 2 Sprachen: Boarisch un da weng Deutsch"
    Ausserdem ist das Thema sehr technisch und im github nicht leicht zu erklären, schätze ich mal.

  13. #13
    Contao-Nutzer Avatar von trilobit
    Registriert seit
    22.07.2011.
    Ort
    Karlsruhe
    Beiträge
    48
    Partner-ID
    7196

    Standard

    -.-

  14. #14
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Gesicht zeigt die Zunge

    OFFTOPIC

    Dann versteh ich nun auch, wieso nach all der Vorbereitung für die Franzosen niemand von denen beim Camp erschienen is.
    Wir sprechen einfach nicht deren Sprache und Englisch steht einfach nicht zur Debatte.

    Aufgabe für nächstes Jahr: Französisch lernen!!!!

  15. #15
    Contao-Fan Avatar von Stranger
    Registriert seit
    20.06.2009.
    Ort
    Blankenburg
    Beiträge
    746
    Partner-ID
    5635
    User beschenken
    Wunschliste

    Standard

    Seit neuestem habe ich auch noch folgenden Fehler:
    PHP-Code:
    Runtime noticeDeclaration of Contao\TagListNews::getRelatedTagList() should be compatible with Contao\TagList::getRelatedTagList($for_tags$blnExcludeUnpublishedItems truein system/modules/tags_news/classes/TagListNews.php on line 14 
    Ich musste folgendes ändern...

    Vorher:
    public function getRelatedTagList($for_tags)

    Nachher:
    public function getRelatedTagList($for_tags, $blnExcludeUnpublishedItems = true)

    Sowie

    PHP-Code:
    Runtime noticeDeclaration of Contao\TagListNews::getTagList() should be compatible with Contao\TagList::getTagList($blnExcludeUnpublishedItems truein system/modules/tags_news/classes/TagListNews.php on line 14 
    Ich musste folgendes ändern...

    Vorher:
    public function getTagList()

    Nachher:
    public function getTagList($blnExcludeUnpublishedItems = true)

    Bitte mal fixen.
    Du willst dich bei mir bedanken?
    Ich freue mich über Geschenke von meiner Amazon-Wunschliste.

    Contao-Anwender seit 2008
    Contao-Entwickler seit 2013, mehr als 50 Contao Erweiterungen programmiert

    Mein Unternehmen aus Blankenburg (Harz): Fast & Media

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •