2010-10-24 3 views
0

J'ai essayé d'utiliser la requête suivante:Avec JDO, est-il possible d'interroger tous les objets qui implémentent une interface particulière?

Query q = getPersistenceManager().newQuery(
getPersistenceManager().getExtent(ICommentItem.class, false) 
); 

mais a obtenu:

org.datanucleus.exceptions.NoPersistenceInformationException: La classe
"com.sampleapp.data.dataobjects.ICommentItem" doit être persistable mais pas de Meta -Data/Annotations peuvent être trouvés pour cette classe. Veuillez vérifier que les méta-données/annotations sont définies dans un emplacement de fichier valide.

j'ai vu dans le forum quelqu'un DataNucleus suggéré (il y a quelques années) en utilisant:

<interface name=IComment/> 

J'ai essayé, mais il n'a pas créé une table quand je courais schéma de mise à jour. Est-ce que le tag est toujours relavent? Je ne vois rien dans les docs dessus.

J'ai aussi essayé:

<class name=IComment/> 

Mais qui a donné cette erreur lors de l'exécution du schéma crée:

GRAVES: Erreur jeté avec l'amélioration ASMClassEnhancer java.lang.NullPointerException à org.datanucleus.enhancer .asm.method.DefaultConstructor.execute (DefaultConstructor.java:63) à org.datanucleus.enhancer.asm.JdoClassAdapter.visitEnd (JdoClassAdapter.java:317) à org.objectweb.asm.ClassReader.accept (source inconnue) à org.objectweb.asm.ClassReader.accept (source inconnue) à org.datanucleus.enhancer.asm.ASMClassEnhancer.enhance (ASMClassEnhancer.java:388) à org.datanucleus.enhancer.DataNucleusEnhancer.enhanceClass (DataNucleusEnhancer.java : 1035) à org.datanucleus.enhancer.DataNucleusEnhancer.enhance (DataNucleusEnhancer.java:609) à org.datanucleus.enhancer.DataNucleusEnhancer.main (DataNucleusEnhancer.java:1316) Oct 23, 2010 6:46:33 PM org.datanucleus.enhancer.DataNucleusEnhancer addMessage INFO: ERREUR (PersistenceCapable): com.sampleapp.data.dataobjects.ICommentItem 23 octobre 2010 18:46:33 org org.atanucleus.enhancer.asm.ASMClassEnhancer enhancer INFO: Classe "com.sampleapp.data.dataobjects.Article" est déjà amélioré. Oct 23, 2010 6:46:33 PM org.datanucleus.enhancer.DataNucleusEnhancer addMessage SEVERE: DataNucleus Enhancer complété avec une erreur. Veuillez consulter le journal de l'enhancer pour plus de détails. Certaines classes ont pu être améliorées mais certaines ont causé des erreurs Échec lors de l'amélioration des classes - voir le journal pour plus de détails org.datanucleus.exceptions.NucleusException: Échec lors de l'amélioration des classes - voir le journal pour plus de détails sur org.datanucleus.enhancer. DataNucleusEnhancer.enhance (DataNucleusEnhancer.java:620) à org.datanucleus.enhancer.DataNucleusEnhancer.main (DataNucleusEnhancer.java:1316)

Répondre

0

Active ce n'est pas pris en charge à ce moment mais il est prévu d'ajouter dans la version 2.2 .0M3

Questions connexes