Граф объектов GWT с сервера пуст после сохранения - PullRequest
1 голос
/ 01 февраля 2012

Когда я создаю новый прокси на клиенте со списком новых дочерних прокси и сохраняю график на сервере, я получаю только корневой узел.Я проверил, что сервер правильно сохраняет график и возвращает график, но GWT не может загрузить их в качестве прокси на клиенте.

У меня есть модели:

class TripProxy {
   List<PatronProxy> getPatrons();
   void setPatrons(List<PatronProxy> patrons);

   // some other fields
}

class PatronProxy {
   void setName(String name);
   String getName();
}

Мой редакторсоздает новую поездку, в которую могут быть добавлены один или несколько постоянных посетителей.Метод save выглядит примерно так:

Trip save(Trip trip);

, который просто сохраняет то, что было дано, и возвращает его обратно.Почему возвращенная поездка не включает патронов, которые были прикреплены?Я указываю правильный оператор with (...) с моим вызовом для сохранения.Я знаю это, потому что когда я позже редактирую поездку (после обновления браузера), я могу видеть постоянных посетителей.

1 Ответ

1 голос
/ 01 февраля 2012

Вы говорите, что "указываете правильное с помощью (...) оператора" , но можете ли вы показать его?

Поскольку with() относится только к тому, что возвращается с сервера, ваше «Я знаю это, потому что ...» не имеет смысла: оно только подтверждает тот факт, что ваши объекты были сохранены и with () вашего метода поиска в порядке, а не with () метода save ().

Ваш звонок на save() должен выглядеть следующим образом:

ctx.save(tripProxy).with("patrons").to(new Receiver<TripProxy>() { ... });

(не стесняйтесь заменить to() на fire(), если вы хотите запустить контекст прямо здесь, а не позже)

...