Mam ziarna, które mają Obiekty, które mogą zawierać różne typy. Teraz, kiedy tworzę XML, doda atrybut klasy do serializowanego obiektu. Chciałbym zmienić na przykład klasową nazwę prostą.Serializacja klas XStream i Object
Przykład Java: inicjalizacji
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;
}
Przykład XML:
<myParentClass>
<childObjectAttribute class="com.example.PossibleClass"/>
</myParentClass>
chciałbym zmienić com.example.PossibleClass do PossibleClass lub coś innego. Czy to jest możliwe?
Jedyną rzeczą, jaką mogę powiedzieć o jest to, że '' PossibleClass'' bez nazwy pakietu może powodować problemy z deserializacją, gdy wiele pakietów zawiera klasę o tej nazwie. W tym celu może być niemożliwe. –