[GORM] Eigene Domänen-Objekte

Im Entwickler-Forum können Implementierungsdetails sowie Alternativen der Umsetzung diskutiert werden. // Here, developers can discuss implementation details of features of their projects.
Antworten
Benutzeravatar
Paric
Beiträge: 45
Registriert: 25.08.2014, 08:51:04

[GORM] Eigene Domänen-Objekte

Beitrag von Paric » 17.12.2014, 11:48:33

Mahlzeit,

wie der Betreff schon zeigt habe ich ein Problem mit dem automatischen generieren von Domain-Objekten. Da ich diese Funktion erst vor kurzem "entdeckt" habe, und sie mir recht praktisch erscheint, wollte ich diese Funktion mal testen. Aber macht leider nicht das was ich von ihm möchte.
Meine initDomainObjects.php schaut wie folgt aus:

Code: Alles auswählen

$apfClassLoaderConfigurationRootPath = './TELLA';
require('./APF/core/bootstrap.php');

use APF\core\loader\RootClassLoader;
use APF\core\loader\StandardClassLoader;
use APF\core\registry\Registry;
use APF\modules\genericormapper\data\tools\GenericORMapperDomainObjectGenerator;

$classLoader = new StandardClassLoader('TELLA', 'TELLA');
RootClassLoader::addLoader($classLoader);

// Umgebung konfigurieren (wichtig für das Laden von Konfigurationen)
Registry::register('APF\core', 'Environment', 'DEFAULT');

$generator = new GenericORMapperDomainObjectGenerator();

// Initialisiert die Mapping-Konfiguration
$generator->addMappingConfiguration('TELLA\data', '');

// Initialisiert die Beziehungs-Konfiguration
$generator->addDomainObjectsConfiguration('TELLA\data', '');

$generator->generateServiceObjects();
und der Inhalt meiner "DEFAULT.domainobjects.ini":

Code: Alles auswählen

[20_rnr_pool]
Class = "TELLA\biz\sb20\RnrPool"
ich bekomme keinen Fehler ausgespuckt, noch irgendetwas anderes. Aber er stellt auch keine Datei. Das kuriose ist, wenn ich die Konfigurationsdatei "DEFAULT_domainobjects.ini" lösche, so bekomme ich auch keine Fehlermeldung. Anders verhält es sich wenn die "DEFAULT_objects.ini" fehlt, da bekomme ich eine ordentliche Fehlermeldung.

Wenn ich mir den Inhalt vor $generator ausgeben lasse, so habe ich zwar unter "[mappingTable:protected]" ordnungsgemäß meine Konfiguration meiner Tabellen der Datenbank, aber unter "[domainObjectsTable:protected]" nicht wie erwartet meine Domain-Objekte sondern lediglich ein leeres Array.

Was übersehe ich? Wo liegt mein Fehler?

Beste Grüße,
Pit

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

Re: [GORM] Eigene Domänen-Objekte

Beitrag von dr.e. » 17.12.2014, 22:12:45

Hallo Pit,

ich vermute, dass in der Zeile

Code: Alles auswählen

$addConfig = $this->getConfiguration($configNamespace, $configNameAffix . '_domainobjects.' . $this->getConfigFileExtension()); 
im BaseMapper.php eine Exception fliegt und mit dem catch gleichzeitig im Nirvana verschwindet. Dies wurde absichtlich so implementiert um bei der Nutzung ohne eigene Domänen-Objekte abwärtskompatibel zu bleiben. Schreib vielleicht in den catch-Block mal eine Log-Ausgabe oder setze eine Breakpoint im Debugger, dann solltest du den Fehler schnell finden.

Meine Vermutung: Name der Konfigurations-Datei für die Domänen-Objekte passt nicht.
Viele Grüße,
Christian

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast