У меня есть beans, у которых есть объекты, которые могут содержать разные типы. Теперь, когда я создаю XML, он добавит атрибут класса к сериализованному объекту. Я хотел бы изменить это, например, простое имя класса.Сериализация класса XStream и Object
Пример Java: инициализация
public class MyParentClass {
private Object childObjectAttribute; // Can be any instance of any interface ...
// Getters & setters etc..
XStream:
public XStream getXStream()
{
XStream xstream = new XStream();
Class<?>[] c = { MyInterfaceImpl.class }; // MyInterfaceImpl has of course @XStreamAlias("MyInterface")
xstream.processAnnotations(c);
xstream.alias(MyInterface.class.getSimpleName(), MyInterface.class, MyInterfaceImpl.class);
return xstream;
}
Пример XML:
<myParentClass>
<childObjectAttribute class="com.example.PossibleClass"/>
</myParentClass>
Я хотел бы изменить com.example.PossibleClass к PossibleClass или что-то другое. Это возможно?
Единственное, что я могу сказать о это то, что '' возможноClass'' без имени пакета может вызвать проблемы десериализации, когда несколько пакетов содержат класс этого имени. Для этого это может быть невозможно. –