Класс Xstream внутри класса

В Xstream мы можем использовать это:

class Cat {
  int age;
  String name;
  Cat anotherSmallCat;
}

XML это

<cat><age>2</age><name>tom</name><cat><name>tommy</name></cat></cat>

Я пытался, но получаю исключение.

com.thoughtworks.xstream.converters.ConversionException

person Muhammad Imran Tariq    schedule 15.02.2013    source источник
comment
Вы пробовали что именно?   -  person Buhake Sindi    schedule 15.02.2013


Ответы (1)


Аннотируйте свою кошку, как показано ниже, используя @XStreamAlias,

@XStreamAlias("Cat")
public class Cat {

    int age;
    String name;

    @XStreamAlias("Cat")
    Cat anotherSmallCat;

}

Попробуйте десериализовать, как показано ниже,

XStream xstream = new XStream();
xstream.processAnnotations(Cat.class);
Cat cat = (Cat) xstream.fromXML(new File("test.xml"));

Не забудьте использовать processAnnotations.

person Jayamohan    schedule 15.02.2013