У меня есть некоторые Serializable объекты, которые я использую с механизмом RPC GWT. Я решил сделать их всем подклассом Объектом, содержащим общие поля, такие как «id», «revision» и т. Д. Однако я заметил, что GWT не сериализует поля суперкласса, поэтому я просто получаю каждый класс суперкласса как нуль на стороне клиента.Как сериализовать поля суперклассов, а также сериализуемый класс
Как я могу получить поля суперкласса, также сериализованные без необходимости писать CustomFieldSerializer для каждого из моих классов Serializable? Является ли это возможным?
Пример:
public class Super {
private String id;
public String getId() {
return id;
}
}
public class Sub extends Super implements Serializable {
private String name;
// more stuff here
}
// on the client side, inside an AsyncCallback
onSuccess(Sub sub) {
assert(sub.getId() != null);
}
Так что, когда я посылаю это через механизм RPC GWT к клиентской стороне, я получаю нулевое значение в поле «ид» любого экземпляра Sub. Я гарантировал, что на сервере id не равен нулю. Я также попытался сделать суперклассом Serializable, без везения.
Любые советы приветствуются.
Пожалуйста, покажите нам минимальный фрагмент кода, который надежно демонстрирует проблему. –
Это так просто, я не думал, что это будет необходимо ... но я все равно добавлю. – Renato