Я использую Objectify как уровень доступа к данным в моем размещенном на GoogleAppEngine приложении.Объяснение встроенных карт не удается получить
Проблема возникает, когда я пытаюсь сохранить карту. Мой боб выглядит следующим образом:
@Entity
@Cached
class MyBean{
@Id
private Long id;
@Embedded
Map<String, String> parameters = new HashMap<String, String>();
public MyBean(){}
//getters and setters below
}
Прежде всего отметим, что карта «параметры» не является частным, он бросает исключение JRE. При сохранении карты все идет хорошо. Когда вы возвращаетесь из DataStore, он терпит неудачу.
Моим обходным путем является использование аннотации @Serialized. Это всего лишь обходное решение, так как я хочу, чтобы использовать функцию expando GAE Datastore.
Согласно objectify doc, я делаю правильные операции.
Сведения об исключении:
Вызванный: java.lang.NullPointerException на com.googlecode.objectify.impl.Transmog.loadSingleValue (Transmog.java:364) на com.googlecode.objectify. impl.load.EmbeddedMapSetter.safeSet (EmbeddedMapSetter.java:65) на com.googlecode.objectify.impl.load.CollisionDetectingSetter.set (CollisionDetectingSetter.java:37) на com.googlecode.objectify.impl.Transmog. loadSingleValue (Transmog.java:359) на com.googlecode.objectify.imp l.Transmog.load (Transmog.java:340) в com.googlecode.objectify.impl.ConcreteEntityMetadata.toObject (ConcreteEntityMetadata.java:203) в com.googlecode.objectify.impl.QueryImpl $ ToObjectIterator.translate (QueryImpl .java: 668) на com.googlecode.objectify.impl.QueryImpl $ ToObjectIterator.translate (QueryImpl.java:657) в com.googlecode.objectify.util.TranslatingIterator.next (TranslatingIterator.java:35)
Есть ли место в другом месте из репо SVN, в котором я могу получить 4ofy 4 lib? –
Да, здесь: http://objectify-appengine.googlecode.com/svn/maven/com/googlecode/objectify/objectify/4.0a3/objectify-4.0a3.jar – stickfigure
Все работает сладко с Ofy4, спасибо –