2013-08-30 2 views
0

Я создал объект с POJO (ProductVariations), используя метку @Serialize быть сохранялось в GAE через объективировать:Невозможно использовать @Serialize с requestfactory

@Entity 
public class Product extends DatastoreObject{ 

    //Reference without the colors and size information 
    @Index private String ref; 
    private double price; 
    private String details; 
    private String description; 
    @Serialize private ProductVariations pVariations; 
    private List<String> tags = new ArrayList<String>(); 

//Getters & Setters 
} 

Проблема заключается в том, что я не см., как получить доступ к моему pojo с помощью requestfactory, поскольку ProductVariations не является типом домена.

В любом другом случае я бы использовал встроенный объект, но в этом конкретном случае у меня есть вложенная коллекция внутри ProductVariations, ведь сама коллекция (ProductVariations расширяет ArrayList).

Любые предложения в отношении того, как этого достичь?

спасибо.

+0

Почему вы не создаете интерфейсы прокси? –

ответ

0

Не уверен, что я понимаю ваш вопрос, но вам нужно реализовать Serializable в Product, если вы хотите отправить его по RPC.

Помимо этого у вас возникают проблемы с хранением ProductVariations? Это интересная концепция. Если он не работает:

Можете ли вы сохранить ProductVariations в своем собственном @Entity?

Затем сохраните ключ в классе продукта (или длинный, с которого вы можете создать ключ).

Для удобства вы также можете оставить ProductVariations в Product, но пометьте его с помощью @Transient, а затем заполните его с Key/Long на заводе, который делает ваш fory.get().

+0

Привет. Я не использую RPC в связи с сервером, я использую RequestFactory, и это проблема. RequestFactory принимает только примитивные типы или прокси-объекты Entity/Value. Я реализовал сериализацию в ProductVariations, чтобы сохранить его с помощью GAE, но я не могу получить к нему доступ от клиента (ограничения RequestFactory). Я мог бы попытаться сделать ProductVariations @Entity, но я думаю, что это невозможно, потому что GAE не принимает вложенную коллекцию внутри коллекции, ведь это так. Я мог бы решить проблему, но меня очень интересует решение проблемы, так как мое решение не кажется элегантным или практичным. – belyid

+0

Достаточно справедливо в комментарии RPC. Я лично не нашел проблемного пространства, где RequestFactory стоит дополнительных проблем за пределами RPC. На ваш вопрос, однако, вы можете уточнить: «GAE не принимает вложенную коллекцию внутри коллекции, ведь это так». –

Смежные вопросы