Я попытался использовать следующий запрос:
Query q = getPersistenceManager().newQuery(
getPersistenceManager().getExtent(ICommentItem.class, false)
);
, но получил:
org.datanucleus.exceptions.NoPersistenceInformationException: класс
"com.sampleapp.data.dataobjects.ICommentItem "должен быть постоянным, но мета-данные / аннотации для этого класса не найдены.Пожалуйста, убедитесь, что метаданные / аннотации определены в правильном расположении файла.
Я видел на форуме Datanucleus, который кто-то предложил (несколько лет назад), используя:
<interface name=IComment/>
Я пыталсяэто, но он не создал никакой таблицы, когда я запустил обновление схемы.Тег все еще актуален?Я не вижу ничего в документах на нем.
Я также пытался:
<class name=IComment/>
Но это приводило к этой ошибке при запуске schema-create:
SEVERE: Ошибка при повышениис ASMClassEnhancer java.lang.NullPointerException в org.datanucleus.enhancer.asm.method.DefaultConstructor.execute (DefaultConstructor.java:63) в org.datanucleus.enhancer.asm.JdoClassAdapter.visjg: ja.objectweb.asm.ClassReader.accept (неизвестный источник) в org.objectweb.asm.ClassReader.accept (неизвестный источник) в org.datanucleus.enhancer.asm.ASMClassEnhancer.enhance (ASMClassEnhancer.java:388) в org.dat.DataNucleusEnhancer.enhanceClass (DataNucleusEnhancer.java:1035) в org.datanucleus.enhancer.DataNucleusEnhancer.enhance (DataNucleusEnhancer.java:609) в org.datanucleus.enclen.: 46: 33 PM org.datanucleus.enhancer.DataNucleusEnhancer addMessage ИНФОРМАЦИЯ: ОШИБКА (PersistenceCapable): com.sampleapp.data.dataobjects.ICommentItem 23 октября 2010 г. 18:46:33 org.datanucleus.enhancer.asm.ASMClassEnhancer повысить ИНФО: Класс "com.sampleapp.data.dataobjects.Article" уже улучшен.23 октября 2010 г., 18:46:33. Org.datanucleus.enhancer.DataNucleusEnhancer addMessage SEVERE: DataNucleus Enhancer завершился с ошибкой.Пожалуйста, просмотрите журнал энхансера для получения полной информации.Некоторые классы, возможно, были улучшены, но некоторые вызвали ошибки. Сбой при расширении классов - подробности см. В журнале org.datanucleus.exceptions.NucleusException: Сбой при расширении классов - подробности см. В журнале по адресу org.datanucleus.enhancer.DataNucleusEnhancer.enhance.(DataNucleusEnhancer.java:620) в org.datanucleus.enhancer.DataNucleusEnhancer.main (DataNucleusEnhancer.java:1316)