xstream> обратная совместимость при создании абстракции в модели - PullRequest
1 голос
/ 02 декабря 2009

у меня

class A {
   @xstreamalias("obj1");
   Object obj1;
   @xstreamalias("obj2");
   Object obj2;
}

and I want to change to 
class AbstractA {
   @xstreamalias("obj1");
   Object obj1;
}

class A extends AbstractA{
   @xstreamalias("obj2");
   Object obj2;
}


без потери содержимого obj1.

В настоящее время у меня нет проблем с чтением старого XML, за исключением того, что я освобождаю содержимое obj1. это как-то поддерживается в xstream? Я имею в виду, что абстракция - это обычное явление в изменениях модели.

1 Ответ

1 голос
/ 24 февраля 2010

XStream в действительности не заботится о том, является ли A подклассом или нет, пока XML все еще соответствует.

Мое предложение: сравнить результат сериализации нового класса А со старым (они должны быть идентичны). Если нет, то это источник вашей проблемы.

...