Class 'Page' not found in

Das Forum ist für das Melden von Bugs gedacht. // This forum is intended to report bugs with the APF.
jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Class 'Page' not found in

Beitrag von jprangenberg » 04.12.2012, 00:05:59

Hallo,

habe seit neustem wieder ein MacBook! Ja, endlich wieder! :lol:

Allerdings bekomme ich nun bei jeder meiner Anwendungen den Fehler:

Code: Alles auswählen

Fatal error: Class 'Page' not found in /Applications/MAMP/htdocs/RoT/apps/core/errorhandler/GlobalErrorHandler.php on line 149
Was übersehe ich?

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: Class 'Page' not found in

Beitrag von Megger » 04.12.2012, 00:12:39

Das Page nicht verfügbar ist :D
Woher hast du denn die GlobalErrorHandler? Die gehört laut SVN nämlich nicht dahin
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 04.12.2012, 01:04:10

Megger hat geschrieben:Das Page nicht verfügbar ist :D
Woher hast du denn die GlobalErrorHandler? Die gehört laut SVN nämlich nicht dahin
Ja! Das besagt die Fehlermeldung. Ich frage mich nur wieso!

Laut SVN, gehört die Datei dahin. Aus dem SVN kommt sie ja:
http://adventurephpfra.svn.sourceforge. ... orhandler/

Diese Fehlermeldung steht in den .logs:

Code: Alles auswählen

[2012-12-04 00:08:47] [ERROR] [d4da67867d193f82e2860cd0c69a18d3] register_shutdown_function(): Invalid shutdown callback 'SessionSingleton::saveObjects' passed (Number: 2, File: /Applications/MAMP/htdocs/RoT/apps/core/singleton/SessionSingleton.php, Line: 22)

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: Class 'Page' not found in

Beitrag von Megger » 04.12.2012, 11:55:38

Ohhh, wo hab ich denn gestern geschaut :shock:

Aber ein bisschen mehr Informationen wären wünschenswert!
Fatal error: Class 'Page' not found in /Applications/MAMP/htdocs/RoT/apps/core/errorhandler/GlobalErrorHandler.php on line 149
Bei sowas könnte man zum Beispiel gleich die entsprechende Codestelle mitposten

Code: Alles auswählen

$stacktrace = new Page();
Da Page meiner Meinung nach in der pagecontroller.php Datei definiert wird, deutet es darauf hin, dass die Datei nicht eingebunden ist!
[2012-12-04 00:08:47] [ERROR] [d4da67867d193f82e2860cd0c69a18d3] register_shutdown_function(): Invalid shutdown callback 'SessionSingleton::saveObjects' passed (Number: 2, File: /Applications/MAMP/htdocs/RoT/apps/core/singleton/SessionSingleton.php, Line: 22)

Code: Alles auswählen

register_shutdown_function(array('SessionSingleton', 'saveObjects'));
Sieht für mich eigentlich ganz ok aus
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 04.12.2012, 12:09:30

Hallo,

ich werde heute Abend den Code posten. Allerdings ist der PageController aufjedenfall in der 1. Zeile eingebunden! Nach dem Include tritt sofort der Fehler auf und das Skript wird beendet.

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 04.12.2012, 17:49:26

Hallo,

Code: Alles auswählen

<?php
include_once('./apps/core/pagecontroller/pagecontroller.php');

// import frontcontroller
import('core::frontcontroller', 'Frontcontroller');
import('gametools::user::biz', 'UserSessionStore');

// deactivate context
ConfigurationManager::retrieveProvider('ini')->setOmitContext(true);

// get instance of frontcontroller
$FrontController = Singleton::getInstance('Frontcontroller');
$FrontController->registerAction('actions','LanguageAction');

// start frontcontroller processing
echo $FrontController->start('sites', 'index');

// ONLY FOR PROGRAMMING
if(isset($_REQUEST['breport']) && $_REQUEST['breport'] == 'true')
{
    // create benchmark report
    echo Singleton::getInstance('BenchmarkTimer')->createReport();

    // get used memory
    echo memory_get_usage()/1000/1000;
}
?>
Direkt nach dem include_once des Pagecontrollers wird das Skript durch ein Fehler beendet.

Fehler im Browser:

Code: Alles auswählen

Fatal error: Class 'Page' not found in /Applications/MAMP/htdocs/RoT/apps/core/errorhandler/GlobalErrorHandler.php on line 149
Fehler im Log:

Code: Alles auswählen

[2012-12-04 00:08:47] [ERROR] [d4da67867d193f82e2860cd0c69a18d3] register_shutdown_function(): Invalid shutdown callback 'SessionSingleton::saveObjects' passed (Number: 2, File: /Applications/MAMP/htdocs/RoT/apps/core/singleton/SessionSingleton.php, Line: 22)

Benutzeravatar
dr.e.
Administrator
Beiträge: 4555
Registriert: 04.11.2007, 16:13:53

Re: Class 'Page' not found in

Beitrag von dr.e. » 06.12.2012, 00:33:15

Sehr komisches Verhalten! Welches Release nutzt du? Hört sich für mich wie ein Problem mit der File-Character-Encoding an...
Viele Grüße,
Christian

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 06.12.2012, 11:46:13

Hallo,

ich nutze 1.16. Ideen?

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: Class 'Page' not found in

Beitrag von Megger » 06.12.2012, 11:59:04

Vielleicht die pagecontroller.php Datei nicht vollständig? Ich nutze auch 1.16 bzw. auch schon 1.17 und dieser Fehler ist mir bisher noch nicht untergekommen
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 06.12.2012, 12:07:05

Megger hat geschrieben:Vielleicht die pagecontroller.php Datei nicht vollständig? Ich nutze auch 1.16 bzw. auch schon 1.17 und dieser Fehler ist mir bisher noch nicht untergekommen
Die Datei ist zu 100% vollständig. Auf meinem Windows 7/8 und Fedora Rechner funktioniert es ja einwandfrei. Habe es ja nur auf meinen Mac kopiert!

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: Class 'Page' not found in

Beitrag von Megger » 06.12.2012, 12:14:24

Dann lass den blöden Mac weg :D

Nein sorry, mir fällt gerade nichts mehr ein

Tritt der Fehler auch auf wenn du nur

Code: Alles auswählen

<?php
include_once('./apps/core/pagecontroller/pagecontroller.php'); 
in die Datei schreibst und alles andere erstmal weglässt?
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 06.12.2012, 17:23:38

Beim ausführen von:

Code: Alles auswählen

<?php
include_once('./apps/core/pagecontroller/pagecontroller.php');

echo "HI"; 
kommt die gleiche Fehlermeldung!

Der Fehler wird geschmissen in Zeile 102 im PageController!

Code: Alles auswählen

import('core::errorhandler', 'GlobalErrorHandler'); 

TipTop
Beiträge: 193
Registriert: 25.08.2011, 22:37:08
Wohnort: Klagenfurt, Österreich
Kontaktdaten:

Re: Class 'Page' not found in

Beitrag von TipTop » 06.12.2012, 17:51:00

xe0n hat geschrieben:Beim ausführen von:

Code: Alles auswählen

<?php
include_once('./apps/core/pagecontroller/pagecontroller.php');

echo "HI"; 
kommt die gleiche Fehlermeldung!

Der Fehler wird geschmissen in Zeile 102 im PageController!

Code: Alles auswählen

import('core::errorhandler', 'GlobalErrorHandler'); 
Erscheint der Fehler auch wenn Du die saveSessionSingletonObjects()-Funktion von SessionSingleton.php (1.15) als Shutdown-Funktion registrierst?

jprangenberg
Beiträge: 410
Registriert: 16.08.2010, 22:14:54

Re: Class 'Page' not found in

Beitrag von jprangenberg » 06.12.2012, 18:17:26

TipTop hat geschrieben:Erscheint der Fehler auch wenn Du die saveSessionSingletonObjects()-Funktion von SessionSingleton.php (1.15) als Shutdown-Funktion registrierst?

Code: Alles auswählen

[MySQLiHandler->executeTextStatement()] (1146) Table 'roft.ent_world' doesn't exist (Statement: SELECT * FROM `ent_world`)
Habe jetzt einfach mal die SessionSingleton-Klasse von 1.16 auf 1.15 downgegraded und nun funktioniert es! Woran liegt es?

EDIT:

SessionSingleton 1.16:

Code: Alles auswählen

...
import('core::session', 'SessionManager');
register_shutdown_function(array('SessionSingleton', 'saveObjects'));
... 
Zu diesem Zeitpunkt kennt das Skript die Klasse SessionSingleton noch nicht! Sie kann also nicht registriert werden!

In der Klasse selbst:

Code: Alles auswählen

...
/**
    * @var SessionManager The session manager instance to retrieve the session objects from.
    */
   private static $SESSION_MANAGER;

   private function __construct() {
       register_shutdown_function(array(this, 'saveObjects'));
   } 
... 
Dort ist die Klasse SessionSingleton bekannt und kann somit auch funktionieren!

Habe diese Vorangehensweise getestet! Funktioniert einwandfrei!

TipTop
Beiträge: 193
Registriert: 25.08.2011, 22:37:08
Wohnort: Klagenfurt, Österreich
Kontaktdaten:

Re: Class 'Page' not found in

Beitrag von TipTop » 06.12.2012, 18:47:59

xe0n hat geschrieben:Zu diesem Zeitpunkt kennt das Skript die Klasse SessionSingleton noch nicht! Sie kann also nicht registriert werden!
Daran kann es nicht liegen, da der Code zuerst in Tokens und anschließend in Opcodes umgewandelt wird - erst dann kommt der Executor zum Einsatz. Welche PHP-Version verwendest Du?

Gesperrt

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast