После того, как я обновил GAE-JAVA-SDK-1.5.5 до 1.6.0 и 1.6.1, мое приложение перестало нормально работать.он начал выдавать ошибку в службе RPC.
Exception while dispatching incoming RPC call com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract void com.skip.school.client.service.AdminService.addStudent(com.skip.school.shared.Student)' threw an unexpected exception: java.lang.NoClassDefFoundError: Could not initialize class com.skip.school.server.PmfSingleton
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.skip.school.server.PmfSingleton
Весь журнал можно найти здесь pastebin .
У меня есть синглтон, который должен быть инициализирован припользователь начинает там первый вызов RPC.Синглтон, который я использую, должен быть правильным, есть много примеров, найденных здесь на stackeroverflow и повсюду в Интернете.
public final class PmfSingleton {
private final static PersistenceManagerFactory pmfInstance = JDOHelper.getPersistenceManagerFactory("transactions-optional");
private PmfSingleton() { }
public static PersistenceManagerFactory get() {
return pmfInstance;
}
}
Я называю этот класс во всех моих реализациях сервера примерно так.
PersistenceManager pm = PmfSingleton.get().getPersistenceManager();
это работает на SDK 1.5.5 и ниже, но не на SDK 1.6.0 и выше, кто-нибудь знает, что я делаю неправильно, что я должен изменить, если я хочу использовать SDK 1.6.0 ивыше