У меня есть класс Data
, который реализует интерфейс Serializable
.В этом классе есть такие поля
private boolean q = false;
private String a = "";
private List<Someclass> m = Collections.emptyList();
private List<Object[]> d = Collections.emptyList();
Значения, назначенные этим членам, являются значениями по умолчанию.Класс Someclass
также реализует Serializable
и имеет такие столбцы
private Types sqlType;
private int columnWidth;
private String columnName;
Types
- это перечисление, которое также реализует сериализуемый.в котором я буду сохранять данные, извлеченные из базы данных через jdbc (при итерации ResultSet
я использую метод getObject()
).Я использую такую конструкцию, потому что она может выполнять любой запрос (структура запроса неизвестна).В List<Someclass> m
я держу метаду запроса.Поэтому, когда я пытаюсь получить строки с помощью простого запроса, я получаю
com.google.gwt.user.client.rpc.SerializationException: Type '[Ljava.lang.Object;' was not included in the set of types which can be serialized by this SerializationPolicy or its Class object could not be loaded. For security purposes, this type will not be serialized.: instance = [Ljava.lang.Object;@127053a9
Почему это происходит?Все мои объекты передачи являются сериализуемыми.
edit Ok, Object
не Serializable, поэтому его нельзя передать и вернуть с сервера.Но что я должен использовать в этом случае.Обобщения не помогут мне, потому что я не знаю тип во время компиляции