Рэй Кромвель имеет временный взлом . Я попробовал, и это работает.
Это заставляет вас использовать Transient вместо отделяемых объектов, потому что GWT не может сериализовать скрытый объект [], используемый DataNucleus; Это означает, что объекты, которые вы отправляете клиенту, не могут быть вставлены обратно в хранилище данных, вы должны извлечь фактический объект хранилища данных и скопировать в него все постоянные поля. Метод Рэя использует отражение, чтобы перебрать методы, извлечь методы getBean () и setBean () и применить сущность setBean () с помощью вашего переходного объекта gwt getBean ().
Вы должны стремиться использовать JDO, JPA пока не намного больше, чем класс-оболочка. Чтобы использовать этот хак, вы должны иметь методы getter и setter для каждого постоянного поля, используя синтаксис PROPER getBean и setBean для каждого поля «bean». Ну, ПОЧТИ ПРАВИЛЬНО, так как предполагается, что все методы получения начнутся с «get», когда по умолчанию используется логическое поле «is».
Я исправил эту проблему и разместил комментарий в блоге Рэя, но он ожидает одобрения, и я не уверен, что он опубликует его. По сути, я реализовал аннотацию @GetterPrefix (prefix = MethodPrefix.IS) в пакете org.datanucleus, чтобы расширить его работу.
Если это не будет опубликовано, и это проблема, напишите x_AT_aiyx_DOT_info Re: @GetterPrefix для JDO, и я вышлю вам исправление.