Ergebnis 1 bis 9 von 9

Thema: Update von 4.13 auf 5.3 scheitert wegen eigener Module/Extensions

  1. #1
    Contao-Nutzer
    Registriert seit
    02.08.2025.
    Beiträge
    4

    Standard Update von 4.13 auf 5.3 scheitert wegen eigener Module/Extensions

    Hallo,
    ich betreibe einen Rootserver mit einer Contao-Installation (nicht kommerziell). Ein Update von 4.13 auf 5.3 scheitert insofern, dass individuelle Module nicht laufen. Ich habe diese nicht entwickelt. Die beiden fraglichen Module wurden vermutlich unter Contao 3 (ehrenamtlich) entwickelt. Ich fand heraus, dass sich zwischenzeitlich viel geändert hat. Unter Contao 4 habe ich die Module noch unter system/modules angelegt bzw. kopiert. Jetzt erhalte ich Fehlermeldungen der Art, dass die Modulklasse nicht existiert. Ich versuche mich in die Programmierung der Erweiterungen einzuarbeiten, scheitere aber an grundlegenden Dingen. Ich fand das Hello-World-Plugin unter https://github.com/dylan-convis/cont...o-world-plugin aber wenn ich das versuche unter Contao 5.3 zu installieren (als ZIP-Datei mit dem Contaomanager), scheitert das mit folgender Fehlermeldung
    > Resolving dependencies using Composer Cloud v3.8.2
    [7.0MiB/0.31s] Loading composer repositories with package information
    [7.5MiB/0.44s] Updating dependencies
    [8.9MiB/0.59s] Your requirements could not be resolved to an installable set of packages.
    [8.9MiB/0.59s]
    Problem 1
    - Root composer.json requires time4digital/dylans-hello-world-bundle, it could not be found in any version, there may be a typo in the package name.
    Potential causes:
    - A typo in the package name
    - The package is not available in a stable-enough version according to your minimum-stability setting
    see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.
    - It's a private package and you forgot to add a custom repository to find it
    Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.
    [8.9MiB/0.60s] <warning>Running update with --no-dev does not mean require-dev is ignored, it just means the packages will not be installed. If dev requirements are blocking the update you have to resolve those problems.</warning>
    [7.9MiB/0.60s] Memory usage: 7.94MB (peak: 9.97MB), time: 0.62s.
    [7.9MiB/0.60s] Finished Composer Cloud resolving.


    Wenn ich zumindest mal ein Hello World Modul nutzen könnte, würde mir das schon helfen. Was muss ich mit dem öffentlich verfügbaren Plugin machen, damit ich es nutzen kann? Oder gibt es ein anderes Modul, was ich nutzen kann? Danke für Anregungen und Hilfestellungen

  2. #2
    Contao-Urgestein
    Registriert seit
    24.02.2021.
    Beiträge
    1.625
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das von dir gepostete Bundle lässt sich nicht via Zip (keine version) oder composer (nicht in Packagist gelistet) installieren und dient als Skeleton zur Eigenentwicklung und ist vermutlich nicht zur Installation gedacht.

    Die (ehrenamtlich) entwickelten Bundles musst du anpassen oder du findest hierfür Alternativen oder du entfernst diese.
    Bundles in "system/modules" werden vermutlich ab Contao 6 auch nicht mehr funktionieren.

  3. #3
    Contao-Urgestein
    Registriert seit
    24.02.2021.
    Beiträge
    1.625
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Du findest hier in "Entwickler-Fragen" viele Threads, welche dir bei der Migration helfen könnten, ansonsten folge der Upgrade.md: https://github.com/contao/contao/blob/5.x/UPGRADE.md

  4. #4
    Contao-Urgestein
    Registriert seit
    24.02.2021.
    Beiträge
    1.625
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    > Jetzt erhalte ich Fehlermeldungen der Art, dass die Modulklasse nicht existiert

    Poste diese Fehlermeldungen

  5. #5
    Contao-Nutzer
    Registriert seit
    02.08.2025.
    Beiträge
    4

    Standard

    Zitat Zitat von zoglo Beitrag anzeigen
    > Jetzt erhalte ich Fehlermeldungen der Art, dass die Modulklasse nicht existiert

    Poste diese Fehlermeldungen
    diese Fehlermeldung erhalte ich.

    [2025-08-02T14:42:16.212393+00:00] contao.error.ERROR: Module class "ModuleSermonList" (module "sermon_list") does not exist [] {"request_uri":"https://dev.$HOSTNAME/$FILENAME.html","request_method":"GET","contao":{" Contao\\CoreBundle\\Monolog\\ContaoContext":"{"fun c":"Contao\\\\Controller::getFrontendModule","acti on":"ERROR","username":"$USER","browser":"Mozilla\ \/5.0 (X11; Linux x86_64; rv:128.0) Gecko\\/20100101 Firefox\\/128.0","uri":"https:\\/\\/dev.$HOSTNAME\\/$FILENAME.html","pageId":160}"}}

    was ich bereits herausgefunden habe ist, dass das Modul noch über ClassLoad aus config/autoload.php geladen wird, was unter Contao 5 nicht mehr unterstützt wird.

  6. #6
    Contao-Nutzer
    Registriert seit
    02.08.2025.
    Beiträge
    4

    Standard

    Zitat Zitat von zoglo Beitrag anzeigen
    Die (ehrenamtlich) entwickelten Bundles musst du anpassen
    das ist wohl der einzig gangbare Weg. Das Hello-World Plugin ohne DB-Anbindung (dokumeniert unter https://www.time4digital.lu/article/...-contao-plugin) funktioniert (noch unter 4.13.54). Damit werde ich weiter machen.

  7. #7
    Contao-Urgestein
    Registriert seit
    24.02.2021.
    Beiträge
    1.625
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Wenn du deine Bundles auf GitHub veröffentlichen könntest, dann könnte man bei Problemen auch gezielter darauf eingehen, siehe bspw. wie in diesem Thread:
    https://community.contao.org/de/show...-5-3-portieren

    In deinem Fall ist es tatsächlich eine Contao 3 Erweiterung, noch kein Contao-Manager-Bundle.
    Ein Tutorial hierfür gibt es tatsächlich nicht in schriftlicher Form, vielleicht hilft dir aber dieses Konferenzvideo:
    https://www.youtube.com/watch?v=34R7buoM_cc

    Es ist schon sehr alt aber bezieht sich tatsächlich auf Contao-Manager-Plugins inkl. composer und Symfony.

  8. #8
    Contao-Nutzer
    Registriert seit
    02.08.2025.
    Beiträge
    4

    Standard

    mit viel Ausdauer habe ich es jetzt geschafft, eines der Plugins so umzuschreiben, dass ich es mit dem Contao-Manager als ZIP-Datei in Contao 4 hochladen kann und es funktioniert. Das Plugin enthält vier Module. Bei dem anderen Plugin gibt es kein Modul sondern nur eine Klasse, die per autoload geladen wird (Contao 3.x Art und Weise):

    PHP-Code:
    ClassLoader::addClasses(array('Contao\SpecialEvents' => 'system/modules/meinplugin/classes/SpecialEvents.php',)); 
    Bei dem anderen (von mir erfolgreich umgeschriebenen) Plugin gab es auch eine Klasse, die aber von einem der vier Module benötigt und dort von dem entsprechenden Modul eingebunden wurde. Ich weiß jetzt aber nicht, wie ich eine solche Klasse, die Frontend erweitert, einbinde, wenn es kein Modul gibt. Die Klasse selbst hat (in Contao 3.5) folgendes Gerüst:

    PHP-Code:
    namespace Contao;
    class 
    SpecialEvents extends Frontend
    {


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

    Standard

    Du könntest das einfach in deiner App implementieren, statt als Bundle. Wenn du die Klasse einfach in den src/ Ordner gibst und und den Namespace der Klasse entsprechend auf App\ änderst, geht es automatisch.
    » sponsor me via GitHub or Revolut

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
  •