Symfony2 - DoctrineMongoDBBundle - Doctrine \ Common \ Anmerkungen \ AnnotationException

8

Ich versuche, DoctrineMongoDBBundle zu verwenden, aber ich stoße auf ein Problem.

In meiner config.yml habe ich:

%Vor%

Meine User.php-Klasse:

%Vor%

Wenn ich den Befehl ausführen:

%Vor%

Ich erhalte den folgenden Fehler:

  

[Doctrine \ Common \ Annotations \ AnnotationException]
  [Semantischer Fehler] Die Anmerkung   "@Doctrine \ ODM \ MongoDB \ Zuordnung \ Anmerkungen \ Dokument" in der Klasse   HALL \ HelloWorldBundle \ Document \ User existiert nicht oder konnte nicht sein   automatisch geladen.

Irgendwelche Ideen warum? Die Anmerkung ist eindeutig referenziert.

    
Flukey 15.07.2011, 14:43
quelle

5 Antworten

4

Die Annotationen wie in Jamies Lösung zu speichern, funktionierte nicht für mich. Es löste dieses Problem, bedeutete aber, dass das Annotations-Objekt nicht aus dem Cache deserialisiert werden konnte. Registrieren Sie die Anmerkungen wie folgt:

%Vor%

Bedeutet, dass das ursprüngliche Problem gelöst wurde, ohne dass das Problem in Bezug auf den Cache eingeführt wurde.

    
Richard Miller 17.07.2011, 13:40
quelle
9

Lösung gefunden.

Ссылка

in app / autoload.php, musste ich hinzufügen:

%Vor%

Ach, ich wünschte, die Dokumentation mir dies sagen würde ....

    
Flukey 15.07.2011 15:07
quelle
1

Sie sollten die Annotation-Klassen beim Bootstrap registrieren, dies kann auf zwei Arten geschehen. Verwenden des statischen Aufrufs, wie von Richard beschrieben. Oder ...

Sie können die Methode registerAnnotationClasses () für Ihr Treiberobjekt verwenden. Dies sollte genau dasselbe tun, erfordert aber keinen path-Parameter (wie es schon bei der Einrichtung Ihres Treibers beim Bootstrapping sein sollte).

%Vor%     
user1252267 08.03.2012 10:12
quelle
1

Lösung gefunden in Dokumentation von DoctrineMongoDBBundle

Ihre App / autoload.php muss so sein:

%Vor%     
ahmed hamdy 03.12.2013 22:50
quelle
0

Ссылка

Im Dokument finden Sie diesen Teil der Konfiguration

    
Julien Moulin 04.08.2015 09:43
quelle