xStream Дублирование данных при извлечении из списка - PullRequest
1 голос
/ 30 мая 2011

Я делаю тестовую программу для записи в XML. У меня есть 3 класса: человек, телефон и город.

А в классе Person у меня есть несколько объектов, таких как факс, сотовый телефон типа. И тоже объекты Города.

У меня есть 4-й класс с именем Persons ... это класс, который имеет список типа Person.

private List<Person> persons = new ArrayList<Person>();

В главном классе я устанавливаю атрибуты и добавляю объект Person в список. но когда я делаю следующую строку:

String xml = xstream.toXml(persons);

xml выглядит дублированным ... вот так:

<persons>
   <persons>
      <person>
         ...
      </person>
   </persons>
</persons>

Добавляет объект Person в объект Person, но добавляет в качестве второго объекта Person.

Необходимый XML:

<persons>
   <person>
       ...
   </person>
</persons>

Кто-нибудь может мне помочь?

И извините за плохой английский. Я бразилец.

1 Ответ

1 голос
/ 31 мая 2011

Пожалуйста, попробуйте дать нам самостоятельный пример. Я предполагаю, что вам может потребоваться указать XStream, чтобы сделать поле «people» (с типом List) «неявным». Вы можете сделать это, используя вызовы методов Java или аннотации. Смотрите addImplicitCollection () (например) и Учебное пособие по аннотациям XStream .

...