Персональный менеджер не может создать экземпляр
У меня есть проект веб-приложения, использующий gwt и использующий google app engine для хранения моих данных. Когда я запускаю свой проект, я получаю следующую ошибку:
WARNING: Error for /proj/saat
java.lang.NoSuchFieldError: NUCLEUS_CONTEXT_LOADER
at org.datanucleus.api.jdo.JDOPersistenceManagerFactory.<clinit>(JDOPersistenceManagerFactory.java:101)
saat - это класс, который я пытаюсь сохранить в своем движке приложений Google. proj - это название моего проекта. Я пытаюсь создать экземпляр моего persistenceManager в saatServiceImpl в пакете сервера следующим образом:
private static final PersistenceManagerFactory pmf = JDOHelper
.getPersistenceManagerFactory("transactions-optional");
и это строка, в которой выдается ошибка. Я понятия не имею, как решить эту проблему. Любые советы приветствуются.
2 ответа
Вы используете неправильный DataNucleus
Библиотека для вашей среды GAE, проверьте эту таблицу и установите в своем проекте соответствующую.
Я не знаю, как и почему, но что-то, что сработало для меня, было то, что я открыл com.google.appengine.eclipse.core.prefs и изменил свойство:
gaeDatanucleusVersion = v2 до gaeDatanucleusVersion=v1