Failed to start application nach Update auf Joomla 4

  • Hallo,


    ich hatte seit langem eine Application laufen, welche sich den User-Accounts aus Joomla bedient.


    Relevanter Code:

    Nach dem Update von Joomla 3.10 auf 4.0 funktioniert dies nicht mehr.


    Stack Trace:

    Code
    Exception:
    Failed to start application
      at /var/www/html/cms/libraries/src/Factory.php:139
      at Joomla\CMS\Factory::getApplication('site')
      at getSession()
      at foo()

    Ich habe gelesen, dass getApplication nun ohne Argumente aufgerufen wird. Dies hat das Problem jedoch nicht verändert.


    Zweck soll sein den auf der Site (nicht Administration) eingeloggten User zu nehmen und über die Session-ID dann diverse Datenbankanfragen auszuführen.

  • require_once(JPATH_BASE . '/libraries/src/Factory.php');

    Schau mal in die /includes/app.php. So macht Joomla 4 das jetzt. Nämlich nahezu undurchschaubar ;)

    Man kann dann zwar die Session abfragen/"holen", aber die id via getId() ist bei mir immer leer.


    Das

    Code
    ->initialise();

    wird aber keinesfalls mehr in so einer einfachen Form funktionieren, da die Funktion mittlerweile protected ist.


    Achselzucken...

  • Ob nun akademisch sinnvoll, richtig, keine Ahnung. Jedenfalls bekomme ich meine Anmelde-ID ausgespuckt.


    Je nachdem, wo dein Script liegt musst das JPATH_BASE wohl noch anpassen.